Files: fbad0279dd4439c8eb8da96d385e27acd5755c74 / test / units / configTEST.js
1829 bytesRaw
1 | import * as c from '../../lib/config.js'; |
2 | import {expect} from 'chai'; |
3 | let defaultConfig = c.config; |
4 | /*globals describe,it*/ |
5 | |
6 | describe('lib::CONFIG', () => { |
7 | 'use strict'; |
8 | describe('constructor', () => { |
9 | it('should get config from file', (done) => { |
10 | process.env.NODE_ENV = 'test'; |
11 | let config = new c.Config(__dirname + '/assets.config/', 'TEST').config; |
12 | expect(config).property('db').to.be.a('string').to.equal('test.db'); |
13 | done(); |
14 | }); |
15 | |
16 | it('should get config from env', (done) => { |
17 | process.env.NODE_ENV = 'test'; |
18 | process.env.TEST_DB = 'env.db'; |
19 | let config = new c.Config(__dirname + '/assets.config/', 'TEST').config; |
20 | expect(config).property('db').to.be.a('string').to.equal('env.db'); |
21 | delete process.env.TEST_DB; |
22 | done(); |
23 | }); |
24 | it('should merge file & env', (done) => { |
25 | process.env.NODE_ENV = 'test'; |
26 | process.env.TEST_SESSION = 'env.db'; |
27 | let config = new c.Config(__dirname + '/assets.config/', 'TEST').config; |
28 | expect(config).property('db').to.be.a('string').to.equal('test.db'); |
29 | expect(config).property('session').to.be.a('string').to.equal('env.db'); |
30 | done(); |
31 | }); |
32 | it('should merge deep', (done) => { |
33 | { |
34 | process.env.NODE_ENV = 'test'; |
35 | let config = |
36 | new c.Config(__dirname + '/assets.config/', 'DEEP').config; |
37 | console.log(config); |
38 | expect(config).property('deep').property('one').equal(1); |
39 | expect(config).property('deep').property('zero').equal(2); |
40 | } |
41 | { |
42 | process.env.NODE_ENV = 'production'; |
43 | let config = new c.Config(__dirname + '/assets.config/', 'DEEPTEST').config; |
44 | console.log(config); |
45 | expect(config).property('deep').property('one').equal(1); |
46 | expect(config).property('deep').property('zero').equal(0); |
47 | done(); |
48 | } |
49 | }); |
50 | }) |
51 | }); |
52 |
Built with git-ssb-web