@mblaney/holster 0.2.0 → 1.0.0
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/build/holster.js +3 -3
- package/build/holster.js.map +3 -3
- package/examples/user.js +3 -3
- package/package.json +1 -1
- package/src/get.js +17 -10
- package/src/ham.js +18 -20
- package/src/holster.js +246 -121
- package/src/index.js +0 -1
- package/src/sea-utils.js +1 -1
- package/src/sea.js +16 -4
- package/src/store.js +1 -1
- package/src/user.js +21 -22
- package/src/utils.js +13 -6
- package/src/wire.js +21 -15
- package/test/holster.get.test.js +32 -2
- package/test/holster.on.test.js +46 -5
- package/test/holster.put.test.js +19 -2
- package/test/holster.secure.test.js +1 -9
- package/test/holster.user.get.test.js +27 -4
- package/test/holster.user.lex.test.js +2 -2
- package/test/holster.user.on.test.js +58 -4
- package/test/holster.user.put.test.js +129 -49
- package/test/wire.test.js +7 -8
|
@@ -85,6 +85,28 @@ describe("holster.user.put", () => {
|
|
|
85
85
|
})
|
|
86
86
|
})
|
|
87
87
|
|
|
88
|
+
test("put and get values in for loop", (t, done) => {
|
|
89
|
+
;(async () => {
|
|
90
|
+
for (let i = 0; i < 5; i++) {
|
|
91
|
+
// Need to be careful putting user properties in a loop as they are
|
|
92
|
+
// verified per node, so wait for each update to return.
|
|
93
|
+
const err = await new Promise(res => {
|
|
94
|
+
user.get("for" + i).put(i, res)
|
|
95
|
+
})
|
|
96
|
+
assert.equal(err, null)
|
|
97
|
+
}
|
|
98
|
+
})()
|
|
99
|
+
|
|
100
|
+
setTimeout(async () => {
|
|
101
|
+
for (let i = 0; i < 5; i++) {
|
|
102
|
+
user.get("for" + i, data => {
|
|
103
|
+
assert.equal(data, i)
|
|
104
|
+
if (i === 4) setTimeout(done, 100)
|
|
105
|
+
})
|
|
106
|
+
}
|
|
107
|
+
}, 500)
|
|
108
|
+
})
|
|
109
|
+
|
|
88
110
|
test("chained get before put", (t, done) => {
|
|
89
111
|
user
|
|
90
112
|
.get("hello")
|
|
@@ -291,10 +313,80 @@ describe("holster.user.put", () => {
|
|
|
291
313
|
})
|
|
292
314
|
})
|
|
293
315
|
|
|
294
|
-
test("
|
|
316
|
+
test("put string with set", (t, done) => {
|
|
317
|
+
user.get("set").put("first", true, err => {
|
|
318
|
+
assert.equal(err, null)
|
|
319
|
+
|
|
320
|
+
setTimeout(() => {
|
|
321
|
+
user.get("set", data => {
|
|
322
|
+
assert.equal(Object.values(data)[0], "first")
|
|
323
|
+
|
|
324
|
+
user.get("set").put("second", true, err => {
|
|
325
|
+
assert.equal(err, null)
|
|
326
|
+
|
|
327
|
+
setTimeout(() => {
|
|
328
|
+
user.get("set", data => {
|
|
329
|
+
for (const value of Object.values(data)) {
|
|
330
|
+
assert.ok(value === "first" || value === "second")
|
|
331
|
+
}
|
|
332
|
+
done()
|
|
333
|
+
})
|
|
334
|
+
}, 2)
|
|
335
|
+
})
|
|
336
|
+
})
|
|
337
|
+
}, 2)
|
|
338
|
+
})
|
|
339
|
+
})
|
|
340
|
+
|
|
341
|
+
test("put object with set", (t, done) => {
|
|
342
|
+
const set1 = {
|
|
343
|
+
key: "value 1",
|
|
344
|
+
child: "child value 1",
|
|
345
|
+
}
|
|
346
|
+
const set2 = {
|
|
347
|
+
key: "value 2",
|
|
348
|
+
child: "child value 2",
|
|
349
|
+
}
|
|
350
|
+
user.get("set2").put(set1, true, err => {
|
|
351
|
+
assert.equal(err, null)
|
|
352
|
+
|
|
353
|
+
setTimeout(() => {
|
|
354
|
+
user.get("set2", data => {
|
|
355
|
+
assert.deepEqual(Object.values(data)[0], set1)
|
|
356
|
+
|
|
357
|
+
user.get("set2").put(set2, true, err => {
|
|
358
|
+
assert.equal(err, null)
|
|
359
|
+
|
|
360
|
+
setTimeout(() => {
|
|
361
|
+
user.get("set2", data => {
|
|
362
|
+
for (const value of Object.values(data)) {
|
|
363
|
+
if (value.key === "value 1") {
|
|
364
|
+
assert.deepEqual(value, set1)
|
|
365
|
+
}
|
|
366
|
+
if (value.key === "value 2") {
|
|
367
|
+
assert.deepEqual(value, set2)
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
done()
|
|
371
|
+
})
|
|
372
|
+
}, 100)
|
|
373
|
+
})
|
|
374
|
+
})
|
|
375
|
+
}, 100)
|
|
376
|
+
})
|
|
377
|
+
})
|
|
378
|
+
|
|
379
|
+
test("get number using public key - logged in", (t, done) => {
|
|
380
|
+
user.get([alice, "pi"], data => {
|
|
381
|
+
assert.equal(data, 3.14159)
|
|
382
|
+
done()
|
|
383
|
+
})
|
|
384
|
+
})
|
|
385
|
+
|
|
386
|
+
test("get number using public key - logged out", (t, done) => {
|
|
295
387
|
user.leave()
|
|
296
388
|
|
|
297
|
-
|
|
389
|
+
user.get([alice, "pi"], data => {
|
|
298
390
|
assert.equal(data, 3.14159)
|
|
299
391
|
done()
|
|
300
392
|
})
|
|
@@ -304,13 +396,10 @@ describe("holster.user.put", () => {
|
|
|
304
396
|
const plain = {
|
|
305
397
|
key: "hello plain value",
|
|
306
398
|
}
|
|
307
|
-
|
|
308
|
-
.
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
assert.deepEqual(data, plain)
|
|
312
|
-
done()
|
|
313
|
-
})
|
|
399
|
+
user.get([alice, "hello"]).next("plain", data => {
|
|
400
|
+
assert.deepEqual(data, plain)
|
|
401
|
+
done()
|
|
402
|
+
})
|
|
314
403
|
})
|
|
315
404
|
|
|
316
405
|
test("get nested object using public key", (t, done) => {
|
|
@@ -320,23 +409,17 @@ describe("holster.user.put", () => {
|
|
|
320
409
|
has: "child value",
|
|
321
410
|
},
|
|
322
411
|
}
|
|
323
|
-
|
|
412
|
+
user.get([alice, "nested"], data => {
|
|
324
413
|
assert.deepEqual(data, nested)
|
|
325
414
|
|
|
326
|
-
|
|
327
|
-
.
|
|
328
|
-
.get("nested")
|
|
329
|
-
.next("key", data => {
|
|
330
|
-
assert.equal(data, "nested value")
|
|
415
|
+
user.get([alice, "nested"]).next("key", data => {
|
|
416
|
+
assert.equal(data, "nested value")
|
|
331
417
|
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
.next("child", data => {
|
|
336
|
-
assert.deepEqual(data, {has: "child value"})
|
|
337
|
-
done()
|
|
338
|
-
})
|
|
418
|
+
user.get([alice, "nested"]).next("child", data => {
|
|
419
|
+
assert.deepEqual(data, {has: "child value"})
|
|
420
|
+
done()
|
|
339
421
|
})
|
|
422
|
+
})
|
|
340
423
|
})
|
|
341
424
|
})
|
|
342
425
|
|
|
@@ -347,35 +430,32 @@ describe("holster.user.put", () => {
|
|
|
347
430
|
has: "hello child value",
|
|
348
431
|
},
|
|
349
432
|
}
|
|
350
|
-
|
|
351
|
-
.
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
.
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
assert.deepEqual(data, {has: "hello child value"})
|
|
369
|
-
done()
|
|
370
|
-
})
|
|
371
|
-
})
|
|
372
|
-
})
|
|
433
|
+
user.get([alice, "hello"]).next("nested", data => {
|
|
434
|
+
assert.deepEqual(data, nested)
|
|
435
|
+
|
|
436
|
+
user
|
|
437
|
+
.get([alice, "hello"])
|
|
438
|
+
.next("nested")
|
|
439
|
+
.next("key", data => {
|
|
440
|
+
assert.equal(data, "hello nested value")
|
|
441
|
+
|
|
442
|
+
user
|
|
443
|
+
.get([alice, "hello"])
|
|
444
|
+
.next("nested")
|
|
445
|
+
.next("child", data => {
|
|
446
|
+
assert.deepEqual(data, {has: "hello child value"})
|
|
447
|
+
done()
|
|
448
|
+
})
|
|
449
|
+
})
|
|
450
|
+
})
|
|
373
451
|
})
|
|
374
452
|
|
|
375
453
|
test("cleanup", (t, done) => {
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
454
|
+
setTimeout(() => {
|
|
455
|
+
fs.rm("test/holster.user.put", {recursive: true, force: true}, err => {
|
|
456
|
+
assert.equal(err, null)
|
|
457
|
+
done()
|
|
458
|
+
})
|
|
459
|
+
}, 100)
|
|
380
460
|
})
|
|
381
461
|
})
|
package/test/wire.test.js
CHANGED
|
@@ -109,8 +109,6 @@ describe("wire", () => {
|
|
|
109
109
|
_: {
|
|
110
110
|
"#": "not on disk",
|
|
111
111
|
">": {test: 1},
|
|
112
|
-
p: undefined,
|
|
113
|
-
s: undefined,
|
|
114
112
|
},
|
|
115
113
|
test: "property",
|
|
116
114
|
},
|
|
@@ -138,8 +136,6 @@ describe("wire", () => {
|
|
|
138
136
|
_: {
|
|
139
137
|
"#": "key",
|
|
140
138
|
">": {value: 1},
|
|
141
|
-
p: undefined,
|
|
142
|
-
s: undefined,
|
|
143
139
|
},
|
|
144
140
|
value: "wire test",
|
|
145
141
|
},
|
|
@@ -151,9 +147,12 @@ describe("wire", () => {
|
|
|
151
147
|
})
|
|
152
148
|
|
|
153
149
|
test("cleanup", (t, done) => {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
150
|
+
// Timeout to let extra wire sends finish before tests end.
|
|
151
|
+
setTimeout(() => {
|
|
152
|
+
fs.rm("test/wire", {recursive: true, force: true}, err => {
|
|
153
|
+
assert.equal(err, null)
|
|
154
|
+
done()
|
|
155
|
+
})
|
|
156
|
+
}, 100)
|
|
158
157
|
})
|
|
159
158
|
})
|