1 | import match from 'MATCH/match';
|
2 | const expect = require('chai').expect;
|
3 |
|
4 |
|
5 | let params = {
|
6 | code: '200',
|
7 | msg: 'ok',
|
8 | http: 200,
|
9 | data: {
|
10 | cityId: '1',
|
11 | provinceId: 2,
|
12 | dis: 2
|
13 | }
|
14 | };
|
15 |
|
16 | let data =
|
17 | match
|
18 | .tmpConfig({
|
19 | autoComplete: true,
|
20 | ignoreTokenKey: ['test']
|
21 | })
|
22 | .parse(params, {
|
23 | data: {
|
24 | city: '$${{data.cityId}}',
|
25 | province: '$${{data.provinceId}}'
|
26 | }
|
27 | });
|
28 |
|
29 | expect(data).to.be.eql({
|
30 | code: '200',
|
31 | msg: 'ok',
|
32 | http: 200,
|
33 | data: {
|
34 | cityId: '1',
|
35 | provinceId: 2,
|
36 | dis: 2,
|
37 | city: '1',
|
38 | province: 2
|
39 | }
|
40 | });
|
41 |
|
42 | params = null;
|
43 | data = match
|
44 | .tmpConfig({
|
45 | filterDefaultArray: true
|
46 | })
|
47 | .parse(params, [{
|
48 | id: '$${{id}}',
|
49 | title: 'string',
|
50 | type: "$${{type}} || 'abc'"
|
51 | }]);
|
52 | expect(data).to.be.eql();
|
53 |
|
54 | params = {
|
55 | };
|
56 | data = match
|
57 | .tmpConfig({
|
58 | filterDefaultArray: true
|
59 | })
|
60 | .parse(params, ['data', {
|
61 | id: '$${{id}}',
|
62 | title: 'string',
|
63 | type: "$${{type}} || 'abc'"
|
64 | }]);
|
65 | expect(data).to.be.eql();
|
66 |
|
67 | params = {
|
68 | code: 200,
|
69 | msg: 'ok',
|
70 | data: null
|
71 | };
|
72 | data = match
|
73 | .tmpConfig({
|
74 | filterDefaultArray: true
|
75 | })
|
76 | .parse(params, {
|
77 | code: '$${{code}}',
|
78 | msg: '$${{msg}}',
|
79 | array: '$${{array}} || []',
|
80 | data: ['data', {
|
81 | id: '$${{id}}',
|
82 | title: 'string',
|
83 | type: "$${{type}} || 'abc'"
|
84 | }]
|
85 | });
|
86 |
|
87 | expect(data).to.be.eql({
|
88 | code: 200,
|
89 | msg: 'ok',
|
90 | array: []
|
91 | });
|
92 |
|
93 | params = {
|
94 | name: {
|
95 | id: 1
|
96 | }
|
97 | };
|
98 | data = match
|
99 | .tmpConfig({
|
100 | filterEmptyObject: true
|
101 |
|
102 | })
|
103 | .parse(params, {
|
104 | title: '$${{abc}}',
|
105 | data: {
|
106 | id: '$${{name.id}}',
|
107 | value: {
|
108 | id: '$${{name.title}}'
|
109 | }
|
110 | },
|
111 | text: {
|
112 | title: '$${{name.abc}}'
|
113 | }
|
114 | });
|
115 | expect(data).to.be.eql({
|
116 | data: {
|
117 | id: 1
|
118 | }
|
119 | });
|
120 |
|
121 | data = match
|
122 | .tmpConfig({
|
123 | filterEmptyObject: true
|
124 |
|
125 | })
|
126 | .parse(params, {
|
127 | title: '$${{abc}}',
|
128 | data: {
|
129 | value: {
|
130 | id: '$${{name.title}}'
|
131 | }
|
132 | },
|
133 | text: {
|
134 | title: '$${{name.abc}}'
|
135 | }
|
136 | });
|
137 | expect(data).to.be.eql(undefined);
|