0.0.4 • Published 9 years ago
sails-generate-unittest v0.0.4
sails-generate-unittest

Generate a unit test for your Sails app.
this a fork by sails-generate-test
Install
npm install --save sails-generate-unittestModules to using for test: Mocha + Chai + Sinon + Supertest
Modules to using for code coverage tool: Istanbul
npm install -D chai mocha sinon supertest istanbulThe unit tests will be executed out by a task Grunt
Install Grunt and module for mocha + istanbul
npm install -D grunt grunt-mocha-istanbulOr you can copy this piece of code in the file package.json and then run npm install
{
"devDependencies": {
"chai": "^3.5.0",
"grunt": "^1.0.1",
"grunt-mocha-istanbul": "^5.0.1",
"istanbul": "^0.4.3",
"mocha": "^2.5.3",
"sinon": "^1.17.4",
"sinon-chai": "^2.8.0",
"supertest": "^1.2.0"
}
}we must modify the .sailsrc file and add the module Test:
{
"generators": {
"modules": {
"test": "sails-generate-unittest"
}
}
}once the modules installed, we can run the tests generator
sails generate test <apiname><apiname> is the endpoint we want to test
for example, we have User module and User controller, the execution would be:
sails generate test UserThe end result will be the generation of the following structure test
test - Root directory for test
├── fixtures
├── integration
│ ├── blueprint - Test directory for Blueprint
│ ├── controller - Test directory for controllers
│ ├── models - For Models
│ ├── polices - For Polices
│ └── services - For Services
├── README.md - README file
├── bootstrap.test.js - Load sails to test
└── moncha.opts - Mocha configurationsGruntjs tasks to be created
task
├── config
│ └── mocha_istanbul.js - Mocha and Istanbul coverage configuration
└── register
└── test.js - Task for to run test
Creating test environment
config
└── env
└── test.js - Test environment