@@ -15,11 +15,13 @@ const seed = require(path.resolve('./lib/services/seed'));
15
15
*/
16
16
describe ( 'Configuration Tests:' , ( ) => {
17
17
let UserService = null ;
18
+ let TaskService = null ;
18
19
19
20
beforeAll ( ( ) => mongooseService . connect ( )
20
21
. then ( ( ) => {
21
22
mongooseService . loadModels ( ) ;
22
23
UserService = require ( path . resolve ( './modules/users/services/user.service' ) ) ;
24
+ TaskService = require ( path . resolve ( './modules/tasks/services/tasks.service' ) ) ;
23
25
} )
24
26
. catch ( ( e ) => {
25
27
console . log ( e ) ;
@@ -29,6 +31,7 @@ describe('Configuration Tests:', () => {
29
31
let admin1 ;
30
32
let userFromSeedConfig ;
31
33
let adminFromSeedConfig ;
34
+ let tasksFromSeedConfig ;
32
35
33
36
let originalLogConfig ;
34
37
@@ -56,10 +59,11 @@ describe('Configuration Tests:', () => {
56
59
57
60
userFromSeedConfig = config . seedDB . options . seedUser ;
58
61
adminFromSeedConfig = config . seedDB . options . seedAdmin ;
62
+ tasksFromSeedConfig = config . seedDB . options . seedTasks ;
59
63
done ( ) ;
60
64
} ) ;
61
65
62
- it ( 'should have seedDB configuration set for "regular" user' , ( done ) => {
66
+ it ( 'should have seedDB configuration set for user' , ( done ) => {
63
67
expect ( userFromSeedConfig ) . toBeInstanceOf ( Object ) ;
64
68
expect ( typeof userFromSeedConfig . username ) . toBe ( 'string' ) ;
65
69
expect ( typeof userFromSeedConfig . email ) . toBe ( 'string' ) ;
@@ -73,22 +77,29 @@ describe('Configuration Tests:', () => {
73
77
done ( ) ;
74
78
} ) ;
75
79
80
+ it ( 'should have seedDB configuration set for tasks' , ( done ) => {
81
+ expect ( tasksFromSeedConfig ) . toBeInstanceOf ( Array ) ;
82
+ expect ( typeof tasksFromSeedConfig [ 0 ] . title ) . toBe ( 'string' ) ;
83
+ expect ( typeof tasksFromSeedConfig [ 1 ] . title ) . toBe ( 'string' ) ;
84
+ done ( ) ;
85
+ } ) ;
86
+
76
87
it ( 'should seed ONLY the admin user account when NODE_ENV is set to "production"' , async ( ) => {
77
88
const nodeEnv = process . env . NODE_ENV ;
78
89
process . env . NODE_ENV = 'production' ;
79
- let seedusers ;
90
+ let result ;
80
91
81
92
try {
82
- seedusers = await seed . start ( { logResults : false } , UserService ) ;
83
- expect ( seedusers ) . toBeInstanceOf ( Array ) ;
84
- expect ( seedusers ) . toHaveLength ( 1 ) ;
93
+ result = await seed . start ( { logResults : false } , UserService , TaskService ) ;
94
+ expect ( result ) . toBeInstanceOf ( Array ) ;
95
+ expect ( result ) . toHaveLength ( 1 ) ;
85
96
} catch ( err ) {
86
97
console . log ( err ) ;
87
98
expect ( err ) . toBeFalsy ( ) ;
88
99
}
89
100
90
101
try {
91
- await UserService . delete ( { id : seedusers [ 0 ] . _id } ) ;
102
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
92
103
} catch ( err ) {
93
104
console . log ( err ) ;
94
105
expect ( err ) . toBeFalsy ( ) ;
@@ -97,23 +108,50 @@ describe('Configuration Tests:', () => {
97
108
process . env . NODE_ENV = nodeEnv ;
98
109
} ) ;
99
110
100
- it ( 'should seed admin, and regular user accounts when NODE_ENV is set to "test"' , async ( ) => {
111
+ it ( 'should seed admin, user accounts when NODE_ENV is set to "test"' , async ( ) => {
101
112
const nodeEnv = process . env . NODE_ENV ;
102
113
process . env . NODE_ENV = 'test' ;
103
- let seedusers ;
114
+ let result ;
104
115
105
116
try {
106
- seedusers = await seed . start ( { logResults : false } , UserService ) ;
107
- expect ( seedusers ) . toBeInstanceOf ( Array ) ;
108
- expect ( seedusers ) . toHaveLength ( 2 ) ;
117
+ result = await seed . start ( { logResults : false } , UserService , TaskService ) ;
118
+ expect ( result ) . toBeInstanceOf ( Array ) ;
119
+ expect ( result ) . toHaveLength ( 2 ) ;
109
120
} catch ( err ) {
110
121
console . log ( err ) ;
111
122
expect ( err ) . toBeFalsy ( ) ;
112
123
}
113
124
114
125
try {
115
- await UserService . delete ( { id : seedusers [ 0 ] . _id } ) ;
116
- await UserService . delete ( { id : seedusers [ 1 ] . _id } ) ;
126
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
127
+ await UserService . delete ( { id : result [ 1 ] . _id } ) ;
128
+ } catch ( err ) {
129
+ console . log ( err ) ;
130
+ expect ( err ) . toBeFalsy ( ) ;
131
+ }
132
+
133
+ process . env . NODE_ENV = nodeEnv ;
134
+ } ) ;
135
+
136
+ it ( 'should seed admin, user accounts and tasks when NODE_ENV is set to "development"' , async ( ) => {
137
+ const nodeEnv = process . env . NODE_ENV ;
138
+ process . env . NODE_ENV = 'development' ;
139
+ let result ;
140
+
141
+ try {
142
+ result = await seed . start ( { logResults : false } , UserService , TaskService ) ;
143
+ expect ( result ) . toBeInstanceOf ( Array ) ;
144
+ expect ( result ) . toHaveLength ( 4 ) ;
145
+ } catch ( err ) {
146
+ console . log ( err ) ;
147
+ expect ( err ) . toBeFalsy ( ) ;
148
+ }
149
+
150
+ try {
151
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
152
+ await UserService . delete ( { id : result [ 1 ] . _id } ) ;
153
+ await TaskService . delete ( { id : result [ 2 ] . _id } ) ;
154
+ await TaskService . delete ( { id : result [ 3 ] . _id } ) ;
117
155
} catch ( err ) {
118
156
console . log ( err ) ;
119
157
expect ( err ) . toBeFalsy ( ) ;
@@ -128,7 +166,7 @@ describe('Configuration Tests:', () => {
128
166
process . env . NODE_ENV = 'test' ;
129
167
let _user ;
130
168
let _admin ;
131
- let seedusers ;
169
+ let result ;
132
170
133
171
try {
134
172
_user = await UserService . create ( userFromSeedConfig ) ;
@@ -150,17 +188,17 @@ describe('Configuration Tests:', () => {
150
188
}
151
189
152
190
try {
153
- seedusers = await seed . start ( { logResults : false } , UserService ) ;
154
- expect ( seedusers ) . toBeInstanceOf ( Array ) ;
155
- expect ( seedusers ) . toHaveLength ( 2 ) ;
191
+ result = await seed . start ( { logResults : false } , UserService , TaskService ) ;
192
+ expect ( result ) . toBeInstanceOf ( Array ) ;
193
+ expect ( result ) . toHaveLength ( 2 ) ;
156
194
} catch ( err ) {
157
195
console . log ( err ) ;
158
196
expect ( err ) . toBeFalsy ( ) ;
159
197
}
160
198
161
199
try {
162
- await UserService . delete ( { id : seedusers [ 0 ] . _id } ) ;
163
- await UserService . delete ( { id : seedusers [ 1 ] . _id } ) ;
200
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
201
+ await UserService . delete ( { id : result [ 1 ] . _id } ) ;
164
202
} catch ( err ) {
165
203
console . log ( err ) ;
166
204
expect ( err ) . toBeFalsy ( ) ;
@@ -172,20 +210,20 @@ describe('Configuration Tests:', () => {
172
210
it ( 'should ONLY seed admin user account when NODE_ENV is set to "production" with custom admin' , async ( ) => {
173
211
const nodeEnv = process . env . NODE_ENV ;
174
212
process . env . NODE_ENV = 'production' ;
175
- let seedusers ;
213
+ let result ;
176
214
177
215
try {
178
- seedusers = await seed . start ( { logResults : false , seedAdmin : admin1 } , UserService ) ;
179
- expect ( seedusers ) . toBeInstanceOf ( Array ) ;
180
- expect ( seedusers ) . toHaveLength ( 1 ) ;
181
- expect ( seedusers [ 0 ] . username ) . toBe ( admin1 . username ) ;
216
+ result = await seed . start ( { logResults : false , seedAdmin : admin1 } , UserService , TaskService ) ;
217
+ expect ( result ) . toBeInstanceOf ( Array ) ;
218
+ expect ( result ) . toHaveLength ( 1 ) ;
219
+ expect ( result [ 0 ] . username ) . toBe ( admin1 . username ) ;
182
220
} catch ( err ) {
183
221
console . log ( err ) ;
184
222
expect ( err ) . toBeFalsy ( ) ;
185
223
}
186
224
187
225
try {
188
- await UserService . delete ( { id : seedusers [ 0 ] . _id } ) ;
226
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
189
227
} catch ( err ) {
190
228
console . log ( err ) ;
191
229
expect ( err ) . toBeFalsy ( ) ;
@@ -197,22 +235,22 @@ describe('Configuration Tests:', () => {
197
235
it ( 'should seed admin, and "regular" user accounts when NODE_ENV is set to "test" with custom options' , async ( ) => {
198
236
const nodeEnv = process . env . NODE_ENV ;
199
237
process . env . NODE_ENV = 'test' ;
200
- let seedusers ;
238
+ let result ;
201
239
202
240
try {
203
- seedusers = await seed . start ( { logResults : false , seedAdmin : admin1 , seedUser : user1 } , UserService ) ;
204
- expect ( seedusers ) . toBeInstanceOf ( Array ) ;
205
- expect ( seedusers ) . toHaveLength ( 2 ) ;
206
- expect ( seedusers [ 0 ] . username ) . toBe ( user1 . username ) ;
207
- expect ( seedusers [ 1 ] . username ) . toBe ( admin1 . username ) ;
241
+ result = await seed . start ( { logResults : false , seedAdmin : admin1 , seedUser : user1 } , UserService , TaskService ) ;
242
+ expect ( result ) . toBeInstanceOf ( Array ) ;
243
+ expect ( result ) . toHaveLength ( 2 ) ;
244
+ expect ( result [ 0 ] . username ) . toBe ( user1 . username ) ;
245
+ expect ( result [ 1 ] . username ) . toBe ( admin1 . username ) ;
208
246
} catch ( err ) {
209
247
console . log ( err ) ;
210
248
expect ( err ) . toBeFalsy ( ) ;
211
249
}
212
250
213
251
try {
214
- await UserService . delete ( { id : seedusers [ 0 ] . _id } ) ;
215
- await UserService . delete ( { id : seedusers [ 1 ] . _id } ) ;
252
+ await UserService . delete ( { id : result [ 0 ] . _id } ) ;
253
+ await UserService . delete ( { id : result [ 1 ] . _id } ) ;
216
254
} catch ( err ) {
217
255
console . log ( err ) ;
218
256
expect ( err ) . toBeFalsy ( ) ;
@@ -225,7 +263,7 @@ describe('Configuration Tests:', () => {
225
263
const nodeEnv = process . env . NODE_ENV ;
226
264
process . env . NODE_ENV = 'production' ;
227
265
let _admin ;
228
- let seedusers ;
266
+ let result ;
229
267
230
268
try {
231
269
_admin = await UserService . create ( adminFromSeedConfig ) ;
@@ -236,8 +274,8 @@ describe('Configuration Tests:', () => {
236
274
}
237
275
238
276
try {
239
- seedusers = await seed . start ( { logResults : false } , UserService ) ;
240
- expect ( seedusers [ 0 ] . details [ 0 ] . message ) . toBe ( 'Failed due to local account already exists: seedadmin' ) ;
277
+ result = await seed . start ( { logResults : false } , UserService , TaskService ) ;
278
+ expect ( result [ 0 ] . details [ 0 ] . message ) . toBe ( 'Failed due to local account already exists: seedadmin' ) ;
241
279
} catch ( err ) {
242
280
console . log ( err ) ;
243
281
expect ( err ) . toBeFalsy ( ) ;
0 commit comments