forked from emberjs/ember.js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
47 lines (39 loc) · 1.27 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
'use strict';
const stringUtil = require('ember-cli-string-utils');
const useTestFrameworkDetector = require('../test-framework-detector');
const path = require('path');
const maybePolyfillTypeScriptBlueprints = require('../-maybe-polyfill-typescript-blueprints');
const { modulePrefixForProject } = require('../-utils');
module.exports = useTestFrameworkDetector({
description: 'Generates a controller unit test.',
shouldTransformTypeScript: true,
init() {
this._super && this._super.init.apply(this, arguments);
maybePolyfillTypeScriptBlueprints(this);
},
locals: function (options) {
let dasherizedModuleName = stringUtil.dasherize(options.entity.name);
let controllerPathName = dasherizedModuleName;
return {
modulePrefix: modulePrefixForProject(options.project),
controllerPathName: controllerPathName,
friendlyTestDescription: ['Unit', 'Controller', dasherizedModuleName].join(' | '),
};
},
fileMapTokens: function () {
return {
__root__() {
return 'tests';
},
__testType__() {
return 'unit';
},
__path__(options) {
if (options.pod) {
return path.join(options.podPath, options.dasherizedModuleName);
}
return 'controllers';
},
};
},
});