Skip to content

Commit 1ff0fa4

Browse files
committed
test: add generator tests
1 parent 09d7fff commit 1ff0fa4

File tree

3 files changed

+35
-4
lines changed

3 files changed

+35
-4
lines changed

generators/app/index.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ module.exports = class extends Generator {
3030
this.prompt(prompts).then((props) => {
3131
this.props = props;
3232

33-
console.log(props);
3433
done();
3534
});
3635
}

package.json

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@
1313
"generators"
1414
],
1515
"scripts": {
16-
"lint": "eslint src/**/*.js",
17-
"start": "node src/index.js"
16+
"coverage": "jest --colors --coverage",
17+
"coveralls": "npm run coverage && cat ./coverage/lcov.info | coveralls",
18+
"jest": "jest --colors --verbose",
19+
"lint": "eslint generators/**/*.js test/**/*.js",
20+
"test": "npm run lint && npm run jest"
1821
},
1922
"repository": {
2023
"type": "git",
@@ -27,10 +30,14 @@
2730
"yeoman-generator": "3.0.0"
2831
},
2932
"devDependencies": {
33+
"coveralls": "3.0.2",
3034
"eslint": "5.0.1",
3135
"eslint-config-prettier": "2.9.0",
3236
"eslint-plugin-prettier": "2.6.2",
33-
"prettier": "1.13.7"
37+
"jest": "23.3.0",
38+
"prettier": "1.13.7",
39+
"yeoman-assert": "3.1.1",
40+
"yeoman-test": "1.8.0"
3441
},
3542
"license": "MIT"
3643
}

test/generator.test.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
const assert = require('yeoman-assert');
2+
const path = require('path');
3+
const test = require('yeoman-test');
4+
5+
const files = require('../generators/app/files');
6+
7+
describe('Generator Tests', () => {
8+
beforeAll((done) => {
9+
test
10+
.run(path.join(__dirname, '../generators/app'))
11+
.withPrompts({
12+
project: 'statik-project',
13+
description: 'A statik project'
14+
})
15+
.on('end', done);
16+
});
17+
18+
it('should create a project', (done) => {
19+
files.forEach((file) => {
20+
assert.file(file.destination);
21+
});
22+
23+
done();
24+
});
25+
});

0 commit comments

Comments
 (0)