w-orm-mongodb 1.1.27 → 1.1.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +17 -17
- package/.github/workflows/ci-test.yml +1 -1
- package/babel.config.js +1 -0
- package/dist/w-orm-mongodb.umd.js +2 -2
- package/dist/w-orm-mongodb.umd.js.map +1 -1
- package/docs/WOrmMongodb.html +110 -99
- package/docs/WOrmMongodb.mjs.html +495 -403
- package/docs/index.html +4 -1
- package/docs/scripts/collapse.js +19 -0
- package/docs/scripts/commonNav.js +28 -0
- package/docs/scripts/search.js +16 -0
- package/docs/styles/jsdoc.css +13 -2
- package/docs/styles/prettify.css +1 -0
- package/g-basic.mjs +5 -1
- package/g-gfs.mjs +12 -1
- package/package.json +4 -4
- package/src/WOrmMongodb.mjs +491 -402
- package/test/basic.test.mjs +368 -0
- package/test/gfs.test.mjs +182 -0
- package/test/all.test.mjs +0 -10
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
import assert from 'assert'
|
|
2
|
+
import wo from '../src/WOrmMongodb.mjs'
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
describe('basic', function() {
|
|
6
|
+
let rt = null
|
|
7
|
+
let vans = {}
|
|
8
|
+
let vget = {}
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
before(async function () {
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
let opt = {
|
|
15
|
+
url: 'mongodb://username:password@127.0.0.1:27017',
|
|
16
|
+
db: 'worm',
|
|
17
|
+
cl: 'users',
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
let rs = [
|
|
22
|
+
{
|
|
23
|
+
id: 'id-peter',
|
|
24
|
+
name: 'peter',
|
|
25
|
+
value: 123,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
id: 'id-rosemary',
|
|
29
|
+
name: 'rosemary',
|
|
30
|
+
value: 123.456,
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
id: '',
|
|
34
|
+
name: 'kettle',
|
|
35
|
+
value: 456,
|
|
36
|
+
},
|
|
37
|
+
]
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
let rsm = [
|
|
41
|
+
{
|
|
42
|
+
id: 'id-peter',
|
|
43
|
+
name: 'peter(modify)'
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: 'id-rosemary',
|
|
47
|
+
name: 'rosemary(modify)'
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
id: '',
|
|
51
|
+
name: 'kettle(modify)'
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
//w
|
|
57
|
+
let w = wo(opt)
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
//on
|
|
61
|
+
w.on('change', function(mode, data, res) {
|
|
62
|
+
// console.log('change', mode)
|
|
63
|
+
})
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
//delAll
|
|
67
|
+
rt = null
|
|
68
|
+
vans[1] = {
|
|
69
|
+
nDeleted: 2,
|
|
70
|
+
ok: 1,
|
|
71
|
+
}
|
|
72
|
+
await w.delAll()
|
|
73
|
+
.then(function(msg) {
|
|
74
|
+
// console.log('delAll then', msg)
|
|
75
|
+
//考慮可能有不同初始測試數據
|
|
76
|
+
// delAll then { n: 2, nDeleted: 2, ok: 1 }
|
|
77
|
+
// delAll then { n: 3, nDeleted: 2, ok: 1 }
|
|
78
|
+
//僅針對nDeleted與ok欄位比對
|
|
79
|
+
rt = {
|
|
80
|
+
nDeleted: msg.nDeleted,
|
|
81
|
+
ok: msg.ok,
|
|
82
|
+
}
|
|
83
|
+
})
|
|
84
|
+
.catch(function(msg) {
|
|
85
|
+
// console.log('delAll catch', msg)
|
|
86
|
+
rt = msg.toString()
|
|
87
|
+
})
|
|
88
|
+
vget[1] = rt
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
//insert
|
|
92
|
+
rt = null
|
|
93
|
+
vans[2] = { n: 3, nInserted: 3, ok: 1 }
|
|
94
|
+
await w.insert(rs)
|
|
95
|
+
.then(function(msg) {
|
|
96
|
+
// console.log('insert then', msg)
|
|
97
|
+
// insert then { n: 3, nInserted: 3, ok: 1 }
|
|
98
|
+
rt = msg
|
|
99
|
+
})
|
|
100
|
+
.catch(function(msg) {
|
|
101
|
+
// console.log('insert catch', msg)
|
|
102
|
+
rt = msg.toString()
|
|
103
|
+
})
|
|
104
|
+
vget[2] = rt
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
//save
|
|
108
|
+
rt = null
|
|
109
|
+
vans[3] = [
|
|
110
|
+
{ n: 1, nModified: 1, ok: 1 },
|
|
111
|
+
{ n: 1, nModified: 1, ok: 1 },
|
|
112
|
+
{ n: 0, nModified: 0, ok: 1 }
|
|
113
|
+
]
|
|
114
|
+
await w.save(rsm, { autoInsert: false, atomic: true })
|
|
115
|
+
.then(function(msg) {
|
|
116
|
+
// console.log('save then', msg)
|
|
117
|
+
// save then [
|
|
118
|
+
// { n: 1, nModified: 1, ok: 1 },
|
|
119
|
+
// { n: 1, nModified: 1, ok: 1 },
|
|
120
|
+
// { n: 0, nModified: 0, ok: 1 }
|
|
121
|
+
// ]
|
|
122
|
+
rt = msg
|
|
123
|
+
})
|
|
124
|
+
.catch(function(msg) {
|
|
125
|
+
// console.log('save catch', msg)
|
|
126
|
+
rt = msg.toString()
|
|
127
|
+
})
|
|
128
|
+
vget[3] = rt
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
//select all
|
|
132
|
+
rt = null
|
|
133
|
+
vans[4] = [
|
|
134
|
+
{ id: 'id-peter', name: 'peter(modify)', value: 123 },
|
|
135
|
+
{ id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 },
|
|
136
|
+
{
|
|
137
|
+
// id: {random id},
|
|
138
|
+
name: 'kettle',
|
|
139
|
+
value: 456
|
|
140
|
+
}
|
|
141
|
+
]
|
|
142
|
+
await w.select()
|
|
143
|
+
.then(function(msg) {
|
|
144
|
+
// console.log('select all then', msg)
|
|
145
|
+
// select all [
|
|
146
|
+
// { id: 'id-peter', name: 'peter(modify)', value: 123 },
|
|
147
|
+
// { id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 },
|
|
148
|
+
// {
|
|
149
|
+
// id: {random id},
|
|
150
|
+
// name: 'kettle',
|
|
151
|
+
// value: 456
|
|
152
|
+
// }
|
|
153
|
+
// ]
|
|
154
|
+
rt = [
|
|
155
|
+
msg[0],
|
|
156
|
+
msg[1],
|
|
157
|
+
{
|
|
158
|
+
name: msg[2].name,
|
|
159
|
+
value: msg[2].value,
|
|
160
|
+
},
|
|
161
|
+
]
|
|
162
|
+
})
|
|
163
|
+
.catch(function(msg) {
|
|
164
|
+
// console.log('select all catch', msg)
|
|
165
|
+
rt = msg.toString()
|
|
166
|
+
})
|
|
167
|
+
vget[4] = rt
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
//select
|
|
171
|
+
rt = null
|
|
172
|
+
vans[5] = [{ id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 }]
|
|
173
|
+
await w.select({ id: 'id-rosemary' })
|
|
174
|
+
.then(function(msg) {
|
|
175
|
+
// console.log('select then', msg)
|
|
176
|
+
// select [ { id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 } ]
|
|
177
|
+
rt = msg
|
|
178
|
+
})
|
|
179
|
+
.catch(function(msg) {
|
|
180
|
+
// console.log('select catch', msg)
|
|
181
|
+
rt = msg.toString()
|
|
182
|
+
})
|
|
183
|
+
vget[5] = rt
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
//select by $and, $gt, $lt
|
|
187
|
+
rt = null
|
|
188
|
+
vans[6] = [{ id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 }]
|
|
189
|
+
await w.select({ '$and': [{ value: { '$gt': 123 } }, { value: { '$lt': 200 } }] })
|
|
190
|
+
.then(function(msg) {
|
|
191
|
+
// console.log('select by $and, $gt, $lt then', msg)
|
|
192
|
+
// select by $and, $gt, $lt [ { id: 'id-rosemary', name: 'rosemary(modify)', value: 123.456 } ]
|
|
193
|
+
rt = msg
|
|
194
|
+
})
|
|
195
|
+
.catch(function(msg) {
|
|
196
|
+
// console.log('select by $and, $gt, $lt catch', msg)
|
|
197
|
+
rt = msg.toString()
|
|
198
|
+
})
|
|
199
|
+
vget[6] = rt
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
//select by $or, $gte, $lte
|
|
203
|
+
rt = null
|
|
204
|
+
vans[7] = [
|
|
205
|
+
{
|
|
206
|
+
// id: {random id},
|
|
207
|
+
name: 'kettle',
|
|
208
|
+
value: 456
|
|
209
|
+
}
|
|
210
|
+
]
|
|
211
|
+
await w.select({ '$or': [{ value: { '$lte': -1 } }, { value: { '$gte': 200 } }] })
|
|
212
|
+
.then(function(msg) {
|
|
213
|
+
// console.log('select by $or, $gte, $lte then', msg)
|
|
214
|
+
// select by $or, $gte, $lte [
|
|
215
|
+
// {
|
|
216
|
+
// id: {random id},
|
|
217
|
+
// name: 'kettle',
|
|
218
|
+
// value: 456
|
|
219
|
+
// }
|
|
220
|
+
// ]
|
|
221
|
+
rt = [
|
|
222
|
+
{
|
|
223
|
+
name: msg[0].name,
|
|
224
|
+
value: msg[0].value,
|
|
225
|
+
},
|
|
226
|
+
]
|
|
227
|
+
})
|
|
228
|
+
.catch(function(msg) {
|
|
229
|
+
// console.log('select by $or, $gte, $lte catch', msg)
|
|
230
|
+
rt = msg.toString()
|
|
231
|
+
})
|
|
232
|
+
vget[7] = rt
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
//select by $or, $and, $ne, $in, $nin
|
|
236
|
+
rt = null
|
|
237
|
+
vans[8] = [
|
|
238
|
+
{
|
|
239
|
+
id: 'id-rosemary',
|
|
240
|
+
name: 'rosemary(modify)',
|
|
241
|
+
value: 123.456
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
// id: {random id},
|
|
245
|
+
name: 'kettle',
|
|
246
|
+
value: 456
|
|
247
|
+
}
|
|
248
|
+
]
|
|
249
|
+
await w.select({ '$or': [{ '$and': [{ value: { '$ne': 123 } }, { value: { '$in': [123, 321, 123.456, 456] } }, { value: { '$nin': [456, 654] } }] }, { '$or': [{ value: { '$lte': -1 } }, { value: { '$gte': 400 } }] }] })
|
|
250
|
+
.then(function(msg) {
|
|
251
|
+
// console.log('select by $or, $and, $ne, $in, $nin then', msg)
|
|
252
|
+
// select by $or, $and, $ne, $in, $nin [
|
|
253
|
+
// {
|
|
254
|
+
// id: 'id-rosemary',
|
|
255
|
+
// name: 'rosemary(modify)',
|
|
256
|
+
// value: 123.456
|
|
257
|
+
// },
|
|
258
|
+
// {
|
|
259
|
+
// id: {random id},
|
|
260
|
+
// name: 'kettle',
|
|
261
|
+
// value: 456
|
|
262
|
+
// }
|
|
263
|
+
// ]
|
|
264
|
+
rt = [
|
|
265
|
+
msg[0],
|
|
266
|
+
{
|
|
267
|
+
name: msg[1].name,
|
|
268
|
+
value: msg[1].value,
|
|
269
|
+
},
|
|
270
|
+
]
|
|
271
|
+
})
|
|
272
|
+
.catch(function(msg) {
|
|
273
|
+
// console.log('select by $or, $and, $ne, $in, $nin catch', msg)
|
|
274
|
+
rt = msg.toString()
|
|
275
|
+
})
|
|
276
|
+
vget[8] = rt
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
//select by regex
|
|
280
|
+
rt = null
|
|
281
|
+
vans[9] = [{ id: 'id-peter', name: 'peter(modify)', value: 123 }]
|
|
282
|
+
await w.select({ name: { $regex: 'PeT', $options: '$i' } })
|
|
283
|
+
.then(function(msg) {
|
|
284
|
+
// console.log('select by regex then', msg)
|
|
285
|
+
// selectReg [ { id: 'id-peter', name: 'peter(modify)', value: 123 } ]
|
|
286
|
+
rt = msg
|
|
287
|
+
})
|
|
288
|
+
.catch(function(msg) {
|
|
289
|
+
// console.log('select by regex catch', msg)
|
|
290
|
+
rt = msg.toString()
|
|
291
|
+
})
|
|
292
|
+
vget[9] = rt
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
//del
|
|
296
|
+
rt = null
|
|
297
|
+
vans[10] = [{ n: 1, nDeleted: 1, ok: 1 }]
|
|
298
|
+
let ss = await w.select()
|
|
299
|
+
let d = ss.filter(function(v) {
|
|
300
|
+
return v.name === 'kettle'
|
|
301
|
+
})
|
|
302
|
+
await w.del(d)
|
|
303
|
+
.then(function(msg) {
|
|
304
|
+
// console.log('del then', msg)
|
|
305
|
+
// del then [ { n: 1, nDeleted: 1, ok: 1 } ]
|
|
306
|
+
rt = msg
|
|
307
|
+
})
|
|
308
|
+
.catch(function(msg) {
|
|
309
|
+
// console.log('del catch', msg)
|
|
310
|
+
rt = msg.toString()
|
|
311
|
+
})
|
|
312
|
+
vget[10] = rt
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
})
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
it(`should get ${JSON.stringify(vans[1])} for delAll`, async function() {
|
|
319
|
+
assert.strict.deepStrictEqual(vget[1], vans[1])
|
|
320
|
+
})
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
it(`should get ${JSON.stringify(vans[2])} for insert`, async function() {
|
|
324
|
+
assert.strict.deepStrictEqual(vget[2], vans[2])
|
|
325
|
+
})
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
it(`should get ${JSON.stringify(vans[3])} for save`, async function() {
|
|
329
|
+
assert.strict.deepStrictEqual(vget[3], vans[3])
|
|
330
|
+
})
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
it(`should get ${JSON.stringify(vans[4])} for select all`, async function() {
|
|
334
|
+
assert.strict.deepStrictEqual(vget[4], vans[4])
|
|
335
|
+
})
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
it(`should get ${JSON.stringify(vans[5])} for select`, async function() {
|
|
339
|
+
assert.strict.deepStrictEqual(vget[5], vans[5])
|
|
340
|
+
})
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
it(`should get ${JSON.stringify(vans[6])} for select by $and, $gt, $lt`, async function() {
|
|
344
|
+
assert.strict.deepStrictEqual(vget[6], vans[6])
|
|
345
|
+
})
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
it(`should get ${JSON.stringify(vans[7])} for select by $or, $gte, $lte`, async function() {
|
|
349
|
+
assert.strict.deepStrictEqual(vget[7], vans[7])
|
|
350
|
+
})
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
it(`should get ${JSON.stringify(vans[8])} for select by $or, $and, $ne, $in, $nin`, async function() {
|
|
354
|
+
assert.strict.deepStrictEqual(vget[8], vans[8])
|
|
355
|
+
})
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
it(`should get ${JSON.stringify(vans[9])} for select by regex`, async function() {
|
|
359
|
+
assert.strict.deepStrictEqual(vget[9], vans[9])
|
|
360
|
+
})
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
it(`should get ${JSON.stringify(vans[10])} for del`, async function() {
|
|
364
|
+
assert.strict.deepStrictEqual(vget[10], vans[10])
|
|
365
|
+
})
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
})
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import assert from 'assert'
|
|
2
|
+
import path from 'path'
|
|
3
|
+
import fs from 'fs'
|
|
4
|
+
import wo from '../src/WOrmMongodb.mjs'
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
describe('gfs', function() {
|
|
8
|
+
let rt = null
|
|
9
|
+
let vans = {}
|
|
10
|
+
let vget = {}
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
before(async function () {
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
let opt = {
|
|
17
|
+
url: 'mongodb://username:password@127.0.0.1:27017',
|
|
18
|
+
db: 'worm',
|
|
19
|
+
cl: 'usersGfs',
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
//w
|
|
24
|
+
let w = wo(opt)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
//on
|
|
28
|
+
w.on('change', function(mode, data, res) {
|
|
29
|
+
// console.log('change', mode)
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
//fn_in, fn_out
|
|
34
|
+
let fn_in = path.resolve('../', './_data', 'data(in).dat')
|
|
35
|
+
let fn_out = path.resolve('../', './_data', 'data(out).dat')
|
|
36
|
+
// console.log('fn_in', fn_in)
|
|
37
|
+
// console.log('fn_out', fn_out)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
//unlinkSync
|
|
41
|
+
try {
|
|
42
|
+
fs.unlinkSync(fn_out)
|
|
43
|
+
}
|
|
44
|
+
catch (err) {}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
//u8a
|
|
48
|
+
let b = await fs.readFileSync(fn_in)
|
|
49
|
+
let u8a = new Uint8Array(b)
|
|
50
|
+
// let u8a = new Uint8Array([66, 97, 115]) //Uint8Array data from nodejs or browser
|
|
51
|
+
// console.log('u8a', u8a)
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
//delAllGfs
|
|
55
|
+
rt = null
|
|
56
|
+
vans[1] = { n: 0, ok: 1 }
|
|
57
|
+
await w.delAllGfs()
|
|
58
|
+
.then(function(msg) {
|
|
59
|
+
// console.log('delAllGfs then', msg)
|
|
60
|
+
// delAllGfs then { n: 0, ok: 1 }
|
|
61
|
+
rt = msg
|
|
62
|
+
})
|
|
63
|
+
.catch(function(msg) {
|
|
64
|
+
// console.log('delAllGfs catch', msg)
|
|
65
|
+
rt = msg.toString()
|
|
66
|
+
})
|
|
67
|
+
vget[1] = rt
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
//insertGfs
|
|
71
|
+
let gi = null
|
|
72
|
+
rt = null
|
|
73
|
+
vans[2] = {
|
|
74
|
+
n: 1,
|
|
75
|
+
ok: 1,
|
|
76
|
+
// id: {random id},
|
|
77
|
+
}
|
|
78
|
+
await w.insertGfs(u8a)
|
|
79
|
+
.then(function(msg) {
|
|
80
|
+
// console.log('insertGfs then', msg)
|
|
81
|
+
// insertGfs { n: 1, ok: 1, id: {random id} }
|
|
82
|
+
gi = msg
|
|
83
|
+
rt = {
|
|
84
|
+
n: msg.n,
|
|
85
|
+
ok: msg.ok,
|
|
86
|
+
}
|
|
87
|
+
})
|
|
88
|
+
.catch(function(msg) {
|
|
89
|
+
// console.log('insertGfs catch', msg)
|
|
90
|
+
rt = msg.toString()
|
|
91
|
+
})
|
|
92
|
+
vget[2] = rt
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
//selectGfs
|
|
96
|
+
rt = null
|
|
97
|
+
vans[3] = [
|
|
98
|
+
0,
|
|
99
|
+
0,
|
|
100
|
+
0,
|
|
101
|
+
24,
|
|
102
|
+
102,
|
|
103
|
+
47381362,
|
|
104
|
+
]
|
|
105
|
+
await w.selectGfs(gi.id)
|
|
106
|
+
.then(function(msg) {
|
|
107
|
+
// console.log('selectGfs then', msg)
|
|
108
|
+
// console.log('msg[0]', msg[0], msg[0] === 0)
|
|
109
|
+
// console.log('msg[1]', msg[1], msg[1] === 0)
|
|
110
|
+
// console.log('msg[2]', msg[2], msg[2] === 0)
|
|
111
|
+
// console.log('msg[3]', msg[3], msg[3] === 24)
|
|
112
|
+
// console.log('msg[4]', msg[4], msg[4] === 102)
|
|
113
|
+
// console.log('msg.length', msg.length, msg.length === 47381362)
|
|
114
|
+
// selectGfs Uint8Array(47381362) [
|
|
115
|
+
// 0, 0, 0, 24, 102, 116, 121, 112, 109, 112, 52, 50,
|
|
116
|
+
// 0, 0, 0, 0, 105, 115, 111, 109, 109, 112, 52, 50,
|
|
117
|
+
// 0, 2, 14, 73, 109, 111, 111, 118, 0, 0, 0, 108,
|
|
118
|
+
// 109, 118, 104, 100, 0, 0, 0, 0, 214, 15, 24, 167,
|
|
119
|
+
// 214, 15, 24, 167, 0, 1, 95, 144, 1, 106, 95, 88,
|
|
120
|
+
// 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
|
121
|
+
// 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
|
|
122
|
+
// 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
|
|
123
|
+
// 0, 0, 0, 0,
|
|
124
|
+
// ... 47381262 more items
|
|
125
|
+
// ]
|
|
126
|
+
// fs.writeFileSync(fn_out, msg)
|
|
127
|
+
rt = [
|
|
128
|
+
msg[0],
|
|
129
|
+
msg[1],
|
|
130
|
+
msg[2],
|
|
131
|
+
msg[3],
|
|
132
|
+
msg[4],
|
|
133
|
+
msg.length,
|
|
134
|
+
]
|
|
135
|
+
})
|
|
136
|
+
.catch(function(msg) {
|
|
137
|
+
// console.log('selectGfs catch', msg)
|
|
138
|
+
rt = msg.toString()
|
|
139
|
+
})
|
|
140
|
+
vget[3] = rt
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
//delGfs
|
|
144
|
+
rt = null
|
|
145
|
+
vans[4] = { n: 1, nDeleted: 1, ok: 1 }
|
|
146
|
+
await w.delGfs(gi.id)
|
|
147
|
+
.then(function(msg) {
|
|
148
|
+
// console.log('delGfs then', msg)
|
|
149
|
+
// delGfs { n: 1, nDeleted: 1, ok: 1 }
|
|
150
|
+
rt = msg
|
|
151
|
+
})
|
|
152
|
+
.catch(function(msg) {
|
|
153
|
+
// console.log('delGfs catch', msg)
|
|
154
|
+
rt = msg.toString()
|
|
155
|
+
})
|
|
156
|
+
vget[4] = rt
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
})
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
it(`should get ${JSON.stringify(vans[1])} for delAllGfs`, function() {
|
|
163
|
+
assert.strict.deepStrictEqual(vget[1], vans[1])
|
|
164
|
+
})
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
it(`should get ${JSON.stringify(vans[2])} for insertGfs`, async function() {
|
|
168
|
+
assert.strict.deepStrictEqual(vget[2], vans[2])
|
|
169
|
+
})
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
it(`should get ${JSON.stringify(vans[3])} for selectGfs`, async function() {
|
|
173
|
+
assert.strict.deepStrictEqual(vget[3], vans[3])
|
|
174
|
+
})
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
it(`should get ${JSON.stringify(vans[4])} for delGfs`, async function() {
|
|
178
|
+
assert.strict.deepStrictEqual(vget[4], vans[4])
|
|
179
|
+
})
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
})
|