From: Sebastian Köhler Date: Sun, 5 Aug 2012 21:38:47 +0000 (+0200) Subject: Tests and documentation for xop X-Git-Tag: rel-20-rc1~76^2~5^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=097c72aa65d9914d688eaece718648ca060e287a;p=ngircd Tests and documentation for xop --- diff --git a/doc/Modes.txt b/doc/Modes.txt index e47e2707..d61bd2d0 100644 --- a/doc/Modes.txt +++ b/doc/Modes.txt @@ -66,7 +66,12 @@ channel of which he is a member. mode since description + q 20? User is channel owner can only be set by a service, other + owner and irc op. Can promote other users to q, a, o, h, v. + a 20? User is channel admin and can promote other users to v, h, o o 0.2.0 User is channel operator and can op/kick/... other members. + h 20? User is half op and can set channel modes imntvIbek and kick + voiced and normal users. v 0.2.0 User is "voiced" and can speak even if channel is moderated. diff --git a/src/testsuite/mode-test.e b/src/testsuite/mode-test.e index 260cd03c..44b6e5df 100644 --- a/src/testsuite/mode-test.e +++ b/src/testsuite/mode-test.e @@ -31,6 +31,46 @@ expect { "@* MODE nick :-i" } +send "join #usermode\r" +expect { + timeout { exit 1 } + "@* JOIN :#usermode" +} +expect { + timeout { exit 1 } + "366" +} + +send "mode #usermode +v nick\r" +expect { + timeout { exit 1 } + "@* MODE #usermode +v nick\r" +} + +send "mode #usermode +h nick\r" +expect { + timeout { exit 1 } + "@* MODE #usermode +h nick\r" +} + +send "mode #usermode +a nick\r" +expect { + timeout { exit 1 } + "482 nick" +} + +send "mode #usermode +q nick\r" +expect { + timeout { exit 1 } + "482 nick" +} + +send "mode #usermode -vho nick nick nick\r" +expect { + timeout { exit 1 } + "@* MODE #usermode -vho nick nick nick" +} + send "oper TestOp 123\r" expect { timeout { exit 1 } @@ -47,6 +87,34 @@ expect { "221 nick +o" } +send "mode #usermode +a nick\r" +expect { + timeout { exit 1 } + "@* MODE #usermode +a nick" +} + +send "mode #usermode +q nick\r" +expect { + timeout { exit 1 } + "@* MODE #usermode +q nick" +} + +send "names #usermode\r" +expect { + timeout { exit 1 } + "353 nick = #usermode :~nick" +} +expect { + timeout { exit 1 } + "366 nick #usermode" +} + +send "part #usermode\r" +expect { + timeout { exit 1 } + "@* PART #usermode" +} + send "join #channel\r" expect { timeout { exit 1 }