mirror of https://codeberg.org/pzp/pzp-db.git
validate group tangle
This commit is contained in:
parent
e957a4a578
commit
393c0e4827
|
@ -1,5 +1,4 @@
|
||||||
const tape = require('tape')
|
const tape = require('tape')
|
||||||
const base58 = require('bs58')
|
|
||||||
const MsgV2 = require('../../lib/msg-v2')
|
const MsgV2 = require('../../lib/msg-v2')
|
||||||
const { generateKeypair } = require('../util')
|
const { generateKeypair } = require('../util')
|
||||||
|
|
||||||
|
@ -18,6 +17,43 @@ tape('validate root msg', (t) => {
|
||||||
t.end()
|
t.end()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
tape('validate group tangle', (t) => {
|
||||||
|
const pubkeys = new Set()
|
||||||
|
const keys1 = generateKeypair('alice')
|
||||||
|
pubkeys.add(keys1.id)
|
||||||
|
|
||||||
|
const groupMsg0 = MsgV2.createGroup(keys1, 'alice')
|
||||||
|
const group = MsgV2.getMsgHash(groupMsg0)
|
||||||
|
const groupMsg0Hash = group
|
||||||
|
|
||||||
|
const tangle = new MsgV2.Tangle(group)
|
||||||
|
|
||||||
|
let err = MsgV2.validate(groupMsg0, tangle, pubkeys, groupMsg0Hash, group)
|
||||||
|
if (err) console.log(err)
|
||||||
|
t.error(err, 'valid group root msg')
|
||||||
|
|
||||||
|
tangle.add(group, groupMsg0)
|
||||||
|
|
||||||
|
const keys2 = generateKeypair('bob')
|
||||||
|
|
||||||
|
const groupMsg1 = MsgV2.create({
|
||||||
|
group: null,
|
||||||
|
groupTips: null,
|
||||||
|
type: 'group',
|
||||||
|
data: { add: keys2.id },
|
||||||
|
tangles: {
|
||||||
|
[group]: tangle,
|
||||||
|
},
|
||||||
|
keys: keys1, // announcing keys2 but signing with keys1
|
||||||
|
})
|
||||||
|
const groupMsg1Hash = MsgV2.getMsgHash(groupMsg1)
|
||||||
|
|
||||||
|
err = MsgV2.validate(groupMsg1, tangle, pubkeys, groupMsg1Hash, group)
|
||||||
|
if (err) console.log(err)
|
||||||
|
t.error(err, 'valid group msg')
|
||||||
|
t.end()
|
||||||
|
})
|
||||||
|
|
||||||
tape('validate 2nd msg with existing root', (t) => {
|
tape('validate 2nd msg with existing root', (t) => {
|
||||||
const keys = generateKeypair('alice')
|
const keys = generateKeypair('alice')
|
||||||
const group = MsgV2.getMsgHash(MsgV2.createGroup(keys, 'alice'))
|
const group = MsgV2.getMsgHash(MsgV2.createGroup(keys, 'alice'))
|
||||||
|
|
Loading…
Reference in New Issue