// Copyright 2004 Google Inc. All Rights Reserved #include "talk/base/gunit.h" #include "talk/xmpp/jid.h" using buzz::Jid; TEST(JidTest, TestDomain) { Jid jid("dude"); EXPECT_EQ("", jid.node()); EXPECT_EQ("dude", jid.domain()); EXPECT_EQ("", jid.resource()); EXPECT_EQ("dude", jid.Str()); EXPECT_EQ("dude", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_TRUE(jid.IsBare()); EXPECT_FALSE(jid.IsFull()); } TEST(JidTest, TestNodeDomain) { Jid jid("walter@dude"); EXPECT_EQ("walter", jid.node()); EXPECT_EQ("dude", jid.domain()); EXPECT_EQ("", jid.resource()); EXPECT_EQ("walter@dude", jid.Str()); EXPECT_EQ("walter@dude", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_TRUE(jid.IsBare()); EXPECT_FALSE(jid.IsFull()); } TEST(JidTest, TestDomainResource) { Jid jid("dude/bowlingalley"); EXPECT_EQ("", jid.node()); EXPECT_EQ("dude", jid.domain()); EXPECT_EQ("bowlingalley", jid.resource()); EXPECT_EQ("dude/bowlingalley", jid.Str()); EXPECT_EQ("dude", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_FALSE(jid.IsBare()); EXPECT_TRUE(jid.IsFull()); } TEST(JidTest, TestNodeDomainResource) { Jid jid("walter@dude/bowlingalley"); EXPECT_EQ("walter", jid.node()); EXPECT_EQ("dude", jid.domain()); EXPECT_EQ("bowlingalley", jid.resource()); EXPECT_EQ("walter@dude/bowlingalley", jid.Str()); EXPECT_EQ("walter@dude", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_FALSE(jid.IsBare()); EXPECT_TRUE(jid.IsFull()); } TEST(JidTest, TestNode) { Jid jid("walter@"); EXPECT_EQ("", jid.node()); EXPECT_EQ("", jid.domain()); EXPECT_EQ("", jid.resource()); EXPECT_EQ("", jid.Str()); EXPECT_EQ("", jid.BareJid().Str()); EXPECT_FALSE(jid.IsValid()); EXPECT_TRUE(jid.IsBare()); EXPECT_FALSE(jid.IsFull()); } TEST(JidTest, TestResource) { Jid jid("/bowlingalley"); EXPECT_EQ("", jid.node()); EXPECT_EQ("", jid.domain()); EXPECT_EQ("", jid.resource()); EXPECT_EQ("", jid.Str()); EXPECT_EQ("", jid.BareJid().Str()); EXPECT_FALSE(jid.IsValid()); EXPECT_TRUE(jid.IsBare()); EXPECT_FALSE(jid.IsFull()); } TEST(JidTest, TestNodeResource) { Jid jid("walter@/bowlingalley"); EXPECT_EQ("", jid.node()); EXPECT_EQ("", jid.domain()); EXPECT_EQ("", jid.resource()); EXPECT_EQ("", jid.Str()); EXPECT_EQ("", jid.BareJid().Str()); EXPECT_FALSE(jid.IsValid()); EXPECT_TRUE(jid.IsBare()); EXPECT_FALSE(jid.IsFull()); } TEST(JidTest, TestFunky) { Jid jid("bowling@muchat/walter@dude"); EXPECT_EQ("bowling", jid.node()); EXPECT_EQ("muchat", jid.domain()); EXPECT_EQ("walter@dude", jid.resource()); EXPECT_EQ("bowling@muchat/walter@dude", jid.Str()); EXPECT_EQ("bowling@muchat", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_FALSE(jid.IsBare()); EXPECT_TRUE(jid.IsFull()); } TEST(JidTest, TestFunky2) { Jid jid("muchat/walter@dude"); EXPECT_EQ("", jid.node()); EXPECT_EQ("muchat", jid.domain()); EXPECT_EQ("walter@dude", jid.resource()); EXPECT_EQ("muchat/walter@dude", jid.Str()); EXPECT_EQ("muchat", jid.BareJid().Str()); EXPECT_TRUE(jid.IsValid()); EXPECT_FALSE(jid.IsBare()); EXPECT_TRUE(jid.IsFull()); }