@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.
@@ -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("get number using public key", (t, done) => {
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
- holster.user(alice).get("pi", data => {
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
- holster
308
- .user(alice)
309
- .get("hello")
310
- .next("plain", data => {
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
- holster.user(alice).get("nested", data => {
412
+ user.get([alice, "nested"], data => {
324
413
  assert.deepEqual(data, nested)
325
414
 
326
- holster
327
- .user(alice)
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
- holster
333
- .user(alice)
334
- .get("nested")
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
- holster
351
- .user(alice)
352
- .get("hello")
353
- .next("nested", data => {
354
- assert.deepEqual(data, nested)
355
-
356
- holster
357
- .user(alice)
358
- .get("hello")
359
- .next("nested")
360
- .next("key", data => {
361
- assert.equal(data, "hello nested value")
362
-
363
- holster
364
- .user(alice)
365
- .get("hello")
366
- .next("nested")
367
- .next("child", data => {
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
- fs.rm("test/holster.user.put", {recursive: true, force: true}, err => {
377
- assert.equal(err, null)
378
- done()
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
- fs.rm("test/wire", {recursive: true, force: true}, err => {
155
- assert.equal(err, null)
156
- done()
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
  })