UNPKG

960 BJavaScriptView Raw
1const expect = require('chai').expect;
2const po = require('./parseOptions');
3
4describe('parseOptions', function() {
5
6 it('getValue', function() {
7
8 expect(po.getValue({}, 'a.b.c')).to.equal(undefined);
9
10 expect(po.getValue({a: 1}, 'a')).to.equal(1);
11
12 expect(po.getValue({a: {b: {c: 2}}}, 'a.b')).to.deep.equal({c: 2});
13
14 });
15
16
17 it('setValue', function() {
18 expect(po.setValue({}, 'a.b.c', 1)).to.deep.equal({a:{b:{c:1}}});
19
20 expect(po.setValue({a:{},a2:2}, 'a.b.c', 1)).to.deep.equal({a:{b:{c:1}},a2:2});
21
22 expect(po.setValue({a:{b:3},a2:2}, 'a.b.c', 1)).to.deep.equal({a:{b:{c:1}},a2:2});
23
24 expect(po.setValue({a:{b:{c:2,d:3}},a2:2}, 'a.b.c', 1)).to.deep.equal({a:{b:{c:1,d:3}},a2:2});
25 });
26
27 it('parse', function() {
28
29 expect(po.parse().wpyExt).to.equal('.wpy');
30
31 expect(po.parse({wpyExt: '.vue'}).wpyExt).to.equal('.vue');
32
33 expect(po.parse({build: {web: {resolve: {a: 1}}}}).build.web.resolve.a).to.equal(1);
34 });
35
36});
\No newline at end of file