mirror of https://codeberg.org/pzp/pzp-db.git
change ghosts.add API arguments
This commit is contained in:
parent
778dbda588
commit
31bf38e2d2
|
@ -935,18 +935,18 @@ function initDB(peer, config) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {{ msg: MsgID; tangle: MsgID; max: number; }} opts
|
* @param {{ tangleID: MsgID; msgID: MsgID; max: number; }} opts
|
||||||
* @param {CB<void>} cb
|
* @param {CB<void>} cb
|
||||||
*/
|
*/
|
||||||
function addGhost(opts, cb) {
|
function addGhost(opts, cb) {
|
||||||
if (!opts) return cb(new Error('ghosts.add() requires an `opts`'))
|
if (!opts) return cb(new Error('ghosts.add() requires an `opts`'))
|
||||||
// prettier-ignore
|
// prettier-ignore
|
||||||
if (!opts.msg || typeof opts.msg !== 'string') return cb(new Error('ghosts.add() requires msgID of the deleted msg in `opts.msg`'))
|
if (!opts.tangleID || typeof opts.tangleID !== 'string') return cb(new Error('ghosts.add() requires tangleID for the deleted msg in `opts.tangle`'))
|
||||||
// prettier-ignore
|
// prettier-ignore
|
||||||
if (!opts.tangle || typeof opts.tangle !== 'string') return cb(new Error('ghosts.add() requires tangleID for the deleted msg in `opts.tangle`'))
|
if (!opts.msgID || typeof opts.msgID !== 'string') return cb(new Error('ghosts.add() requires msgID of the deleted msg in `opts.msg`'))
|
||||||
// prettier-ignore
|
// prettier-ignore
|
||||||
if (!opts.max || typeof opts.max !== 'number') return cb(new Error('ghosts.add() requires max depth distance in `opts.max`'))
|
if (!opts.max || typeof opts.max !== 'number') return cb(new Error('ghosts.add() requires max depth distance in `opts.max`'))
|
||||||
const { msg: msgID, tangle: tangleID, max } = opts
|
const { tangleID, msgID, max } = opts
|
||||||
const rec = getRecord(msgID)
|
const rec = getRecord(msgID)
|
||||||
if (!rec) return cb()
|
if (!rec) return cb()
|
||||||
if (!rec.msg) return cb()
|
if (!rec.msg) return cb()
|
||||||
|
|
|
@ -37,18 +37,18 @@ test('ghosts.add, ghosts.get, ghosts.getMinDepth', async (t) => {
|
||||||
const ghosts0 = peer.db.ghosts.get(feedID)
|
const ghosts0 = peer.db.ghosts.get(feedID)
|
||||||
assert.deepEqual(ghosts0, [], 'no ghosts so far')
|
assert.deepEqual(ghosts0, [], 'no ghosts so far')
|
||||||
|
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[0], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[0], tangleID: feedID, max: MAX })
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[1], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[1], tangleID: feedID, max: MAX })
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[2], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[2], tangleID: feedID, max: MAX })
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[3], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[3], tangleID: feedID, max: MAX })
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[4], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[4], tangleID: feedID, max: MAX })
|
||||||
|
|
||||||
const ghostsA = peer.db.ghosts.get(feedID)
|
const ghostsA = peer.db.ghosts.get(feedID)
|
||||||
assert.deepEqual(ghostsA, msgIDs.slice(0, 5), 'ghosts so far')
|
assert.deepEqual(ghostsA, msgIDs.slice(0, 5), 'ghosts so far')
|
||||||
const depthA = peer.db.ghosts.getMinDepth(feedID)
|
const depthA = peer.db.ghosts.getMinDepth(feedID)
|
||||||
assert.equal(depthA, 1, 'min depth so far')
|
assert.equal(depthA, 1, 'min depth so far')
|
||||||
|
|
||||||
await p(peer.db.ghosts.add)({ msg: msgIDs[5], tangle: feedID, max: MAX })
|
await p(peer.db.ghosts.add)({ msgID: msgIDs[5], tangleID: feedID, max: MAX })
|
||||||
|
|
||||||
const ghostsB = peer.db.ghosts.get(feedID)
|
const ghostsB = peer.db.ghosts.get(feedID)
|
||||||
assert.deepEqual(ghostsB, msgIDs.slice(1, 6), 'ghosts so far')
|
assert.deepEqual(ghostsB, msgIDs.slice(1, 6), 'ghosts so far')
|
||||||
|
|
Loading…
Reference in New Issue