Module: ngircd.git Branch: master Commit: 097c72aa65d9914d688eaece718648ca060e287a URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=097c7...
Author: Sebastian Köhler sebkoehler@whoami.org.uk Date: Sun Aug 5 23:38:47 2012 +0200
Tests and documentation for xop
---
doc/Modes.txt | 5 ++++ src/testsuite/mode-test.e | 68 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+)
diff --git a/doc/Modes.txt b/doc/Modes.txt index e47e270..d61bd2d 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 260cd03..44b6e5d 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 }