Skip to content

Commit 4f0de9a

Browse files
committed
Add RuntimeResolver unit tests
1 parent cd2c4b8 commit 4f0de9a

File tree

2 files changed

+54
-0
lines changed

2 files changed

+54
-0
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
"devDependencies": {
5858
"@embroider/compat": "^3.0.0",
5959
"@embroider/webpack": "^3.0.0",
60+
"@jest/globals": "^29.5.0",
6061
"@tsconfig/node16": "^1.0.4",
6162
"@tsconfig/strictest": "^2.0.1",
6263
"@types/chalk": "^2.2.0",

transforms/no-implicit-this/test.ts

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
'use strict';
22

3+
import { describe, expect, test } from '@jest/globals';
34
import { runTransformTest } from 'codemod-cli';
5+
import { setTelemetry } from 'ember-codemods-telemetry-helpers';
6+
import { RuntimeResolver } from './helpers/resolver';
47
import { setupResolver } from './test-helpers';
58

69
process.env['TESTING'] = 'true';
@@ -11,3 +14,53 @@ runTransformTest({
1114
type: 'jscodeshift',
1215
name: 'no-implicit-this',
1316
});
17+
18+
describe('Resolver', () => {
19+
describe('RuntimeResolver', () => {
20+
test('.has', () => {
21+
const telemetry = {
22+
'pyckle/components/gherkyn': {
23+
type: 'Component',
24+
computedProperties: [],
25+
offProperties: {},
26+
overriddenActions: [],
27+
overriddenProperties: [],
28+
unobservedProperties: {},
29+
},
30+
'pyckle/helpers/cucumbyr': {
31+
type: 'Helper',
32+
computedProperties: [],
33+
offProperties: {},
34+
overriddenActions: [],
35+
overriddenProperties: [],
36+
unobservedProperties: {},
37+
},
38+
'ember-welcome-page/templates/components/welcome-page': {
39+
type: 'Component',
40+
computedProperties: [],
41+
offProperties: {},
42+
overriddenActions: [],
43+
overriddenProperties: [],
44+
unobservedProperties: {},
45+
},
46+
};
47+
setTelemetry(telemetry);
48+
const resolver = RuntimeResolver.build();
49+
50+
expect(resolver.has('component', 'gherkyn')).toBe(true);
51+
expect(resolver.has('component', 'welcome-page')).toBe(true);
52+
expect(resolver.has('component', 'cucumbyr')).toBe(false);
53+
expect(resolver.has('component', 'nope')).toBe(false);
54+
55+
expect(resolver.has('helper', 'gherkyn')).toBe(false);
56+
expect(resolver.has('helper', 'welcome-page')).toBe(false);
57+
expect(resolver.has('helper', 'cucumbyr')).toBe(true);
58+
expect(resolver.has('helper', 'nope')).toBe(false);
59+
60+
expect(resolver.has('ambiguous', 'gherkyn')).toBe(true);
61+
expect(resolver.has('ambiguous', 'welcome-page')).toBe(true);
62+
expect(resolver.has('ambiguous', 'cucumbyr')).toBe(true);
63+
expect(resolver.has('ambiguous', 'nope')).toBe(false);
64+
});
65+
});
66+
});

0 commit comments

Comments
 (0)