increasing test coverage to 20 percent
[aai/sparky-fe.git] / test / utils / KeyMirror.test.js
1 import keyMirror from 'utils/KeyMirror.js';
2
3 describe('KeyMirror', () => {
4   it('valid key mirror with nulls', () => {
5     const obj = {
6       TIER_SUPPORT: null,
7       INVENTORY: null,
8       VNF_SEARCH: null
9     }
10     const mirror = keyMirror(obj);
11
12     for (let key in obj) {
13       expect(mirror).toHaveProperty(key);
14       expect(JSON.stringify(mirror[key])).toBe(JSON.stringify(Symbol(key)));
15     }
16   });
17
18   it('valid key mirror with undefined', () => {
19     const obj = {
20       TIER_SUPPORT: undefined,
21       INVENTORY: undefined,
22       VNF_SEARCH: undefined
23     }
24     const mirror = keyMirror(obj);
25
26     for (let key in obj) {
27       expect(mirror).toHaveProperty(key);
28       expect(JSON.stringify(mirror[key])).toBe(JSON.stringify(Symbol(key)));
29     }
30   });
31
32   it('valid key mirror with values', () => {
33     let preMirrorList = {
34       TIER_SUPPORT: 'tier support',
35       INVENTORY: 'inventory',
36       VNF_SEARCH: 'vnf search'
37     };
38     const mirror = keyMirror(preMirrorList);
39
40     for (let key in preMirrorList) {
41       expect(mirror).toHaveProperty(key);
42       expect(JSON.stringify(mirror[key])).toBe(JSON.stringify(preMirrorList[key]));
43     }
44   });
45
46   it('valid key mirror with objects', () => {
47     let preMirrorList = {
48       TIER_SUPPORT: {
49         name: 'tier support'
50       },
51       INVENTORY: {
52         name: 'inventory'
53       },
54       VNF_SEARCH: {
55         name: 'vnf search'
56       }
57     };
58     const mirror = keyMirror(preMirrorList);
59
60     for (let key in preMirrorList) {
61       expect(mirror).toHaveProperty(key);
62       expect(JSON.stringify(mirror[key])).toBe(JSON.stringify(preMirrorList[key]));
63     }
64   });
65
66   it('invalid key mirror', () => {
67     let preMirrorList = [
68       'tier support',
69       'inventory',
70       'vnf search'
71     ]
72     const mirror = () => {
73       keyMirror(preMirrorList);
74     }
75
76     expect(mirror).toThrow(Error);
77     expect(mirror).toThrowError('keyMirror(...): Argument must be an object.');
78   });
79 })