Skip to content

Commit

Permalink
tests: add user not subscribed to mod
Browse files Browse the repository at this point in the history
  • Loading branch information
cblgh committed Jun 8, 2019
1 parent 886a06c commit 1339a78
Showing 1 changed file with 22 additions and 10 deletions.
32 changes: 22 additions & 10 deletions test/mod.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,36 @@ var randomBytes = require('crypto').randomBytes
var collect = require('collect-stream')

test('ban a user by key', function (t) {
t.plan(6)
t.plan(10)
var addr = randomBytes(32).toString('hex')
var cabal0 = Cabal(ram, 'cabal://' + addr)
cabal0.ready(function () {
cabal0.getLocalKey(function (err, key) {
t.error(err)
var cabal1 = Cabal(ram, 'cabal://' + key + '@' + addr)
var cabal2 = Cabal(ram, 'cabal://' + key + '@' + addr)
var pending = 3
var cabal2 = Cabal(ram, 'cabal://' + key + '@' + addr) // subscribes to mod
var cabal3 = Cabal(ram, 'cabal://' + addr) // does not subscribe to mod
var pending = 4
cabal1.ready(function () {
if (--pending === 0) ready(cabal0, cabal1, cabal2)
if (--pending === 0) ready(cabal0, cabal1, cabal2, cabal3)
})
cabal2.ready(function () {
if (--pending === 0) ready(cabal0, cabal1, cabal2)
if (--pending === 0) ready(cabal0, cabal1, cabal2, cabal3)
})
if (--pending === 0) ready(cabal0, cabal1, cabal2)
cabal3.ready(function () {
if (--pending === 0) ready(cabal0, cabal1, cabal2, cabal3)
})
if (--pending === 0) ready(cabal0, cabal1, cabal2, cabal3)
})
})
function ready (cabal0, cabal1, cabal2) {
function ready (cabal0, cabal1, cabal2, cabal3) {
cabal1.getLocalKey(function (err, key1) {
t.error(err)
cabal0.publish({
type: 'ban/add',
content: { key: key1 }
})
sync([cabal0,cabal1,cabal2])
sync([cabal0,cabal1,cabal2,cabal3])
setTimeout(function () {
collect(cabal2.moderation.listBans('@'), function (err, bans) {
t.error(err)
Expand All @@ -40,6 +44,14 @@ test('ban a user by key', function (t) {
t.error(err)
t.ok(banned)
})
collect(cabal3.moderation.listBans('@'), function (err, bans) {
t.error(err)
t.deepEqual(bans, [])
})
cabal3.moderation.isBanned({ key: key1 }, function (err, banned) {
t.error(err)
t.notOk(banned)
})
}, 1000)
})
}
Expand All @@ -52,8 +64,8 @@ test('delegated moderator ban a user by key', function (t) {
cabal0.ready(function () {
cabal0.getLocalKey(function (err, key) {
t.error(err)
var cabal1 = Cabal(ram, 'cabal://' + key + '@' + addr)
var cabal2 = Cabal(ram, 'cabal://' + key + '@' + addr)
var cabal1 = Cabal(ram, `cabal://${addr}?mod=${key}`)
var cabal2 = Cabal(ram, `cabal://${addr}?mod=${key}`)
var pending = 3
cabal1.ready(function () {
if (--pending === 0) ready(cabal0, cabal1, cabal2)
Expand Down

0 comments on commit 1339a78

Please sign in to comment.