commit 097c72aa65d9914d688eaece718648ca060e287a from: Sebastian Köhler date: Mon Aug 06 02:42:20 2012 UTC Tests and documentation for xop commit - 7b01bb833f5bc3386611dc0c015a99c236e941f6 commit + 097c72aa65d9914d688eaece718648ca060e287a blob - e47e2707244f9d30894c6b108357918468fa92af blob + d61bd2d02e4612f325140e369700dabe8924f959 --- doc/Modes.txt +++ 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. blob - 260cd03c12898ae46c5e9d58b1f5f4fb4bcf74ff blob + 44b6e5dfe5a3bb3cb05dddba1e08498e1cb58bdd --- src/testsuite/mode-test.e +++ 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 }