Skip to content

Commit

Permalink
more live tests
Browse files Browse the repository at this point in the history
  • Loading branch information
mafintosh committed Jun 12, 2018
1 parent 9daa994 commit 17a5631
Showing 1 changed file with 64 additions and 0 deletions.
64 changes: 64 additions & 0 deletions test/live/bep44.js
@@ -1,5 +1,6 @@
var test = require('tape')
var DHT = require('../../')
var ed = require('ed25519-supercop')

test('Set and get before ready is emitted', function (t) {
var dht1 = new DHT()
Expand All @@ -17,3 +18,66 @@ test('Set and get before ready is emitted', function (t) {
})
})
})

test('put mutable', function (t) {
var dht1 = new DHT()
var dht2 = new DHT({verify: ed.verify})
var k = kp()

dht1.put({
k: k.publicKey,
v: 'myvalue',
sign: sign,
seq: 0
}, function (err, hash, n) {
t.error(err)
t.ok(hash)
dht2.get(hash, function (err, value) {
t.error(err)
t.same(value.v.toString(), 'myvalue')
dht1.destroy()
dht2.destroy()
t.end()
})
})

function sign (buf) {
return ed.sign(buf, k.publicKey, k.secretKey)
}
})

test('put mutable (salted)', function (t) {
var dht1 = new DHT()
var dht2 = new DHT({verify: ed.verify})
var k = kp()
var salt = ed.createSeed().slice(0, 20)

dht1.put({
k: k.publicKey,
v: 'myvalue',
sign: sign,
seq: 0,
salt: salt
}, function (err, hash, n) {
t.error(err)
t.ok(hash)
dht2.get(hash, function (_, value) {
t.ok(!value, 'salt required')
dht2.get(hash, {salt: salt}, function (err, value) {
t.error(err)
t.same(value.v.toString(), 'myvalue')
dht1.destroy()
dht2.destroy()
t.end()
})
})
})

function sign (buf) {
return ed.sign(buf, k.publicKey, k.secretKey)
}
})

function kp () {
return ed.createKeyPair(ed.createSeed())
}

0 comments on commit 17a5631

Please sign in to comment.