| OLD | NEW | 
|---|
|  | (Empty) | 
| 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 <string> |  | 
| 12 #include "webrtc/libjingle/xmllite/qname.h" |  | 
| 13 #include "webrtc/base/gunit.h" |  | 
| 14 |  | 
| 15 using buzz::StaticQName; |  | 
| 16 using buzz::QName; |  | 
| 17 |  | 
| 18 TEST(QNameTest, TestTrivial) { |  | 
| 19   QName name("test"); |  | 
| 20   EXPECT_EQ(name.LocalPart(), "test"); |  | 
| 21   EXPECT_EQ(name.Namespace(), ""); |  | 
| 22 } |  | 
| 23 |  | 
| 24 TEST(QNameTest, TestSplit) { |  | 
| 25   QName name("a:test"); |  | 
| 26   EXPECT_EQ(name.LocalPart(), "test"); |  | 
| 27   EXPECT_EQ(name.Namespace(), "a"); |  | 
| 28   QName name2("a-very:long:namespace:test-this"); |  | 
| 29   EXPECT_EQ(name2.LocalPart(), "test-this"); |  | 
| 30   EXPECT_EQ(name2.Namespace(), "a-very:long:namespace"); |  | 
| 31 } |  | 
| 32 |  | 
| 33 TEST(QNameTest, TestMerge) { |  | 
| 34   QName name("a", "test"); |  | 
| 35   EXPECT_EQ(name.LocalPart(), "test"); |  | 
| 36   EXPECT_EQ(name.Namespace(), "a"); |  | 
| 37   EXPECT_EQ(name.Merged(), "a:test"); |  | 
| 38   QName name2("a-very:long:namespace", "test-this"); |  | 
| 39   EXPECT_EQ(name2.LocalPart(), "test-this"); |  | 
| 40   EXPECT_EQ(name2.Namespace(), "a-very:long:namespace"); |  | 
| 41   EXPECT_EQ(name2.Merged(), "a-very:long:namespace:test-this"); |  | 
| 42 } |  | 
| 43 |  | 
| 44 TEST(QNameTest, TestAssignment) { |  | 
| 45   QName name("a", "test"); |  | 
| 46   // copy constructor |  | 
| 47   QName namecopy(name); |  | 
| 48   EXPECT_EQ(namecopy.LocalPart(), "test"); |  | 
| 49   EXPECT_EQ(namecopy.Namespace(), "a"); |  | 
| 50   QName nameassigned(""); |  | 
| 51   nameassigned = name; |  | 
| 52   EXPECT_EQ(nameassigned.LocalPart(), "test"); |  | 
| 53   EXPECT_EQ(nameassigned.Namespace(), "a"); |  | 
| 54 } |  | 
| 55 |  | 
| 56 TEST(QNameTest, TestConstAssignment) { |  | 
| 57   StaticQName name = { "a", "test" }; |  | 
| 58   QName namecopy(name); |  | 
| 59   EXPECT_EQ(namecopy.LocalPart(), "test"); |  | 
| 60   EXPECT_EQ(namecopy.Namespace(), "a"); |  | 
| 61   QName nameassigned(""); |  | 
| 62   nameassigned = name; |  | 
| 63   EXPECT_EQ(nameassigned.LocalPart(), "test"); |  | 
| 64   EXPECT_EQ(nameassigned.Namespace(), "a"); |  | 
| 65 } |  | 
| 66 |  | 
| 67 TEST(QNameTest, TestEquality) { |  | 
| 68   QName name("a-very:long:namespace:test-this"); |  | 
| 69   QName name2("a-very:long:namespace", "test-this"); |  | 
| 70   QName name3("a-very:long:namespaxe", "test-this"); |  | 
| 71   EXPECT_TRUE(name == name2); |  | 
| 72   EXPECT_FALSE(name == name3); |  | 
| 73 } |  | 
| 74 |  | 
| 75 TEST(QNameTest, TestCompare) { |  | 
| 76   QName name("a"); |  | 
| 77   QName name2("nsa", "a"); |  | 
| 78   QName name3("nsa", "b"); |  | 
| 79   QName name4("nsb", "b"); |  | 
| 80 |  | 
| 81   EXPECT_TRUE(name < name2); |  | 
| 82   EXPECT_FALSE(name2 < name); |  | 
| 83 |  | 
| 84   EXPECT_FALSE(name2 < name2); |  | 
| 85 |  | 
| 86   EXPECT_TRUE(name2 < name3); |  | 
| 87   EXPECT_FALSE(name3 < name2); |  | 
| 88 |  | 
| 89   EXPECT_TRUE(name3 < name4); |  | 
| 90   EXPECT_FALSE(name4 < name3); |  | 
| 91 } |  | 
| 92 |  | 
| 93 TEST(QNameTest, TestStaticQName) { |  | 
| 94   const StaticQName const_name1 = { "namespace", "local-name1" }; |  | 
| 95   const StaticQName const_name2 = { "namespace", "local-name2" }; |  | 
| 96   const QName name("namespace", "local-name1"); |  | 
| 97   const QName name1 = const_name1; |  | 
| 98   const QName name2 = const_name2; |  | 
| 99 |  | 
| 100   EXPECT_TRUE(name == const_name1); |  | 
| 101   EXPECT_TRUE(const_name1 == name); |  | 
| 102   EXPECT_FALSE(name != const_name1); |  | 
| 103   EXPECT_FALSE(const_name1 != name); |  | 
| 104 |  | 
| 105   EXPECT_TRUE(name == name1); |  | 
| 106   EXPECT_TRUE(name1 == name); |  | 
| 107   EXPECT_FALSE(name != name1); |  | 
| 108   EXPECT_FALSE(name1 != name); |  | 
| 109 |  | 
| 110   EXPECT_FALSE(name == name2); |  | 
| 111   EXPECT_FALSE(name2 == name); |  | 
| 112   EXPECT_TRUE(name != name2); |  | 
| 113   EXPECT_TRUE(name2 != name); |  | 
| 114 } |  | 
| OLD | NEW | 
|---|