Upstream version 11.40.271.0
[platform/framework/web/crosswalk.git] / src / third_party / webrtc / libjingle / xmpp / jid_unittest.cc
1 /*
2  *  Copyright 2004 The WebRTC Project Authors. All rights reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10
11 #include "webrtc/libjingle/xmpp/jid.h"
12 #include "webrtc/base/gunit.h"
13
14 using buzz::Jid;
15
16 TEST(JidTest, TestDomain) {
17   Jid jid("dude");
18   EXPECT_EQ("", jid.node());
19   EXPECT_EQ("dude", jid.domain());
20   EXPECT_EQ("", jid.resource());
21   EXPECT_EQ("dude", jid.Str());
22   EXPECT_EQ("dude", jid.BareJid().Str());
23   EXPECT_TRUE(jid.IsValid());
24   EXPECT_TRUE(jid.IsBare());
25   EXPECT_FALSE(jid.IsFull());
26 }
27
28 TEST(JidTest, TestNodeDomain) {
29   Jid jid("walter@dude");
30   EXPECT_EQ("walter", jid.node());
31   EXPECT_EQ("dude", jid.domain());
32   EXPECT_EQ("", jid.resource());
33   EXPECT_EQ("walter@dude", jid.Str());
34   EXPECT_EQ("walter@dude", jid.BareJid().Str());
35   EXPECT_TRUE(jid.IsValid());
36   EXPECT_TRUE(jid.IsBare());
37   EXPECT_FALSE(jid.IsFull());
38 }
39
40 TEST(JidTest, TestDomainResource) {
41   Jid jid("dude/bowlingalley");
42   EXPECT_EQ("", jid.node());
43   EXPECT_EQ("dude", jid.domain());
44   EXPECT_EQ("bowlingalley", jid.resource());
45   EXPECT_EQ("dude/bowlingalley", jid.Str());
46   EXPECT_EQ("dude", jid.BareJid().Str());
47   EXPECT_TRUE(jid.IsValid());
48   EXPECT_FALSE(jid.IsBare());
49   EXPECT_TRUE(jid.IsFull());
50 }
51
52 TEST(JidTest, TestNodeDomainResource) {
53   Jid jid("walter@dude/bowlingalley");
54   EXPECT_EQ("walter", jid.node());
55   EXPECT_EQ("dude", jid.domain());
56   EXPECT_EQ("bowlingalley", jid.resource());
57   EXPECT_EQ("walter@dude/bowlingalley", jid.Str());
58   EXPECT_EQ("walter@dude", jid.BareJid().Str());
59   EXPECT_TRUE(jid.IsValid());
60   EXPECT_FALSE(jid.IsBare());
61   EXPECT_TRUE(jid.IsFull());
62 }
63
64 TEST(JidTest, TestNode) {
65   Jid jid("walter@");
66   EXPECT_EQ("", jid.node());
67   EXPECT_EQ("", jid.domain());
68   EXPECT_EQ("", jid.resource());
69   EXPECT_EQ("", jid.Str());
70   EXPECT_EQ("", jid.BareJid().Str());
71   EXPECT_FALSE(jid.IsValid());
72   EXPECT_TRUE(jid.IsBare());
73   EXPECT_FALSE(jid.IsFull());
74 }
75
76 TEST(JidTest, TestResource) {
77   Jid jid("/bowlingalley");
78   EXPECT_EQ("", jid.node());
79   EXPECT_EQ("", jid.domain());
80   EXPECT_EQ("", jid.resource());
81   EXPECT_EQ("", jid.Str());
82   EXPECT_EQ("", jid.BareJid().Str());
83   EXPECT_FALSE(jid.IsValid());
84   EXPECT_TRUE(jid.IsBare());
85   EXPECT_FALSE(jid.IsFull());
86 }
87
88 TEST(JidTest, TestNodeResource) {
89   Jid jid("walter@/bowlingalley");
90   EXPECT_EQ("", jid.node());
91   EXPECT_EQ("", jid.domain());
92   EXPECT_EQ("", jid.resource());
93   EXPECT_EQ("", jid.Str());
94   EXPECT_EQ("", jid.BareJid().Str());
95   EXPECT_FALSE(jid.IsValid());
96   EXPECT_TRUE(jid.IsBare());
97   EXPECT_FALSE(jid.IsFull());
98 }
99
100 TEST(JidTest, TestFunky) {
101   Jid jid("bowling@muchat/walter@dude");
102   EXPECT_EQ("bowling", jid.node());
103   EXPECT_EQ("muchat", jid.domain());
104   EXPECT_EQ("walter@dude", jid.resource());
105   EXPECT_EQ("bowling@muchat/walter@dude", jid.Str());
106   EXPECT_EQ("bowling@muchat", jid.BareJid().Str());
107   EXPECT_TRUE(jid.IsValid());
108   EXPECT_FALSE(jid.IsBare());
109   EXPECT_TRUE(jid.IsFull());
110 }
111
112 TEST(JidTest, TestFunky2) {
113   Jid jid("muchat/walter@dude");
114   EXPECT_EQ("", jid.node());
115   EXPECT_EQ("muchat", jid.domain());
116   EXPECT_EQ("walter@dude", jid.resource());
117   EXPECT_EQ("muchat/walter@dude", jid.Str());
118   EXPECT_EQ("muchat", jid.BareJid().Str());
119   EXPECT_TRUE(jid.IsValid());
120   EXPECT_FALSE(jid.IsBare());
121   EXPECT_TRUE(jid.IsFull());
122 }