commit - 7b01bb833f5bc3386611dc0c015a99c236e941f6
commit + 097c72aa65d9914d688eaece718648ca060e287a
blob - e47e2707244f9d30894c6b108357918468fa92af
blob + d61bd2d02e4612f325140e369700dabe8924f959
--- doc/Modes.txt
+++ doc/Modes.txt
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
"@* 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 }
"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 }