Add CModeMessage

This commit is contained in:
J-P Nurmi
2015-09-05 11:57:14 +02:00
parent fa894a86b0
commit ec952024d7
2 changed files with 18 additions and 0 deletions

View File

@@ -113,6 +113,11 @@ public:
void SetKey(const CString& sKey) { SetParam(1, sKey); }
};
class CModeMessage : public CTargetMessage {
public:
CString GetModes() const { return GetParams(1); }
};
class CNickMessage : public CMessage {
public:
CString GetOldNick() const { return GetNick().GetNick(); }

View File

@@ -176,6 +176,19 @@ TEST(MessageTest, Join) {
EXPECT_EQ(":nick JOIN #znc", msg.ToString());
}
TEST(MessageTest, Mode) {
CModeMessage msg;
msg.Parse(":nick MODE #chan +k foo");
EXPECT_EQ("nick", msg.GetNick().GetNick());
EXPECT_EQ("MODE", msg.GetCommand());
EXPECT_EQ("#chan", msg.GetTarget());
EXPECT_EQ("+k foo", msg.GetModes());
msg.SetTarget("#znc");
EXPECT_EQ("#znc", msg.GetTarget());
EXPECT_EQ(":nick MODE #znc +k foo", msg.ToString());
}
TEST(MessageTest, Nick) {
CNickMessage msg;
msg.Parse(":nick NICK person");