1 | const calculateAlias = require('../packages/utils/calculateAlias');
|
2 | const calculateAliasConfig = require('../packages/utils/calculateAliasConfig');
|
3 | const nodeResolve = require('resolve');
|
4 |
|
5 |
|
6 |
|
7 | jest.mock('../packages/utils/calculateAliasConfig');
|
8 | jest.mock('resolve');
|
9 |
|
10 | describe('calculate alias', () => {
|
11 |
|
12 | let sourcePath = '/Users/blue/work/anu/packages/cli/packages/demo/source/pages/syntax/await/index.js';
|
13 |
|
14 |
|
15 |
|
16 | test('import react from \'@react\';', ()=>{
|
17 |
|
18 | calculateAliasConfig.mockReturnValue({
|
19 | '@react': '/Users/blue/work/anu/packages/cli/packages/demo/source/ReactWX.js'
|
20 | });
|
21 | expect(
|
22 | calculateAlias(sourcePath, '@react')
|
23 | ).toBe('../../../ReactWX.js');
|
24 | });
|
25 |
|
26 |
|
27 |
|
28 | test('import Cat from \'@components/Cat/index\';', ()=>{
|
29 | calculateAliasConfig.mockReturnValue({
|
30 | '@components': '/Users/blue/work/anu/packages/cli/packages/demo/source/components'
|
31 | });
|
32 | expect(
|
33 | calculateAlias(sourcePath, '@components/Cat/index')
|
34 | ).toBe('../../../components/Cat/index');
|
35 | });
|
36 |
|
37 |
|
38 |
|
39 | test('import Dog from \'@syntaxComponents/Dog/index\';', ()=>{
|
40 | calculateAliasConfig.mockReturnValue({
|
41 | '@syntaxComponents': '/Users/blue/work/anu/packages/cli/packages/demo/source/pages/syntax/components'
|
42 | });
|
43 | expect(
|
44 | calculateAlias(sourcePath, '@syntaxComponents/Dog/index')
|
45 | ).toBe('../components/Dog/index');
|
46 | });
|
47 |
|
48 |
|
49 |
|
50 | test('import getLocalion from \'@utils/getLocalion/index\';', ()=>{
|
51 | calculateAliasConfig.mockReturnValue({
|
52 | '@utils': '/Users/blue/work/anu/packages/cli/packages/demo/source/utils'
|
53 | });
|
54 |
|
55 | expect(
|
56 | calculateAlias(sourcePath, '@utils/getLocalion/index')
|
57 | ).toBe('../../../utils/getLocalion/index');
|
58 |
|
59 | });
|
60 |
|
61 |
|
62 |
|
63 | test('import cookie from \'cookie\';', ()=>{
|
64 | nodeResolve.sync.mockReturnValue('/Users/blue/work/anu/packages/cli/packages/demo/node_modules/cookie/index.js');
|
65 | expect(
|
66 | calculateAlias(sourcePath, 'cookie')
|
67 | ).toBe('../../../npm/cookie/index.js');
|
68 | });
|
69 |
|
70 |
|
71 |
|
72 | test('import getName from \'../getName\';', ()=>{
|
73 | expect(
|
74 | calculateAlias(sourcePath, '../getName')
|
75 | ).toBe('../getName');
|
76 | });
|
77 |
|
78 |
|
79 | }); |
\ | No newline at end of file |