1
+ import { Config } from 'src/utils/config' ;
2
+ import { merge } from 'lodash' ;
1
3
import defaultConfig from '../../config/default' ;
2
4
import devConfig from '../../config/development' ;
5
+ import testConfig from '../../config/test' ;
3
6
import stageConfig from '../../config/staging' ;
4
7
import prodConfig from '../../config/production' ;
8
+ import stackConfig from '../../config/stack' ;
5
9
6
10
describe ( 'Config util' , ( ) => {
7
11
const OLD_ENV = process . env ;
@@ -32,6 +36,35 @@ describe('Config util', () => {
32
36
} ) ;
33
37
} ) ;
34
38
39
+ it ( 'should return test server config' , ( ) => {
40
+ process . env . NODE_ENV = 'test' ;
41
+ // eslint-disable-next-line global-require
42
+ const { get } = require ( './config' ) ;
43
+
44
+ const result = get ( 'server' ) as Config [ 'server' ] ;
45
+
46
+ expect ( result ) . toEqual ( {
47
+ ...defaultConfig . server ,
48
+ ...testConfig . server ,
49
+ } ) ;
50
+ } ) ;
51
+
52
+ it ( 'should return stack server config' , ( ) => {
53
+ process . env . BUILD_TYPE = 'REDIS_STACK' ;
54
+ process . env . NODE_ENV = 'staging' ;
55
+ // eslint-disable-next-line global-require
56
+ const { get } = require ( './config' ) ;
57
+
58
+ const result = get ( 'server' ) as Config [ 'server' ] ;
59
+
60
+ expect ( result ) . toEqual ( {
61
+ ...defaultConfig . server ,
62
+ ...stageConfig . server ,
63
+ ...stackConfig . server ,
64
+ buildType : 'REDIS_STACK' ,
65
+ } ) ;
66
+ } ) ;
67
+
35
68
it ( 'should return stage server config' , ( ) => {
36
69
process . env . NODE_ENV = 'staging' ;
37
70
// eslint-disable-next-line global-require
@@ -57,5 +90,15 @@ describe('Config util', () => {
57
90
...prodConfig . server ,
58
91
} ) ;
59
92
} ) ;
93
+
94
+ it ( 'should return entire prod server config' , ( ) => {
95
+ process . env . NODE_ENV = 'production' ;
96
+ // eslint-disable-next-line global-require
97
+ const { get } = require ( './config' ) ;
98
+
99
+ const result = get ( ) as Config [ 'server' ] ;
100
+
101
+ expect ( result ) . toEqual ( merge ( { ...defaultConfig } , { ...prodConfig } ) ) ;
102
+ } ) ;
60
103
} ) ;
61
104
} ) ;
0 commit comments