1
0
Fork 0
forked from External/ergo

Merge pull request #270 from slingamn/amode.1

frontend for persistent account modes in channels
This commit is contained in:
Daniel Oaks 2018-05-30 21:27:28 +10:00 committed by GitHub
commit 7bf18443a8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 232 additions and 27 deletions

View file

@ -8,6 +8,47 @@ import (
"testing"
)
func TestParseChannelModeChanges(t *testing.T) {
modes, unknown := ParseChannelModeChanges("+h", "wrmsr")
if len(unknown) > 0 {
t.Errorf("unexpected unknown mode change: %v", unknown)
}
expected := ModeChange{
Op: Add,
Mode: Halfop,
Arg: "wrmsr",
}
if len(modes) != 1 || modes[0] != expected {
t.Errorf("unexpected mode change: %v", modes)
}
modes, unknown = ParseChannelModeChanges("-v", "shivaram")
if len(unknown) > 0 {
t.Errorf("unexpected unknown mode change: %v", unknown)
}
expected = ModeChange{
Op: Remove,
Mode: Voice,
Arg: "shivaram",
}
if len(modes) != 1 || modes[0] != expected {
t.Errorf("unexpected mode change: %v", modes)
}
modes, unknown = ParseChannelModeChanges("+tx")
if len(unknown) != 1 || !unknown['x'] {
t.Errorf("expected that x is an unknown mode, instead: %v", unknown)
}
expected = ModeChange{
Op: Add,
Mode: OpOnlyTopic,
Arg: "",
}
if len(modes) != 1 || modes[0] != expected {
t.Errorf("unexpected mode change: %v", modes)
}
}
func TestSetMode(t *testing.T) {
set := NewModeSet()