Brian Carlstrom | 7e93b50 | 2011-08-04 14:16:22 -0700 | [diff] [blame] | 1 | // Copyright 2011 Google Inc. All Rights Reserved. |
| 2 | |
| 3 | #include "intern_table.h" |
| 4 | |
| 5 | #include "common_test.h" |
| 6 | #include "object.h" |
| 7 | |
Brian Carlstrom | 7e93b50 | 2011-08-04 14:16:22 -0700 | [diff] [blame] | 8 | namespace art { |
| 9 | |
Brian Carlstrom | f734cf5 | 2011-08-17 16:28:14 -0700 | [diff] [blame] | 10 | class InternTableTest : public CommonTest {}; |
Brian Carlstrom | 7e93b50 | 2011-08-04 14:16:22 -0700 | [diff] [blame] | 11 | |
| 12 | TEST_F(InternTableTest, Intern) { |
| 13 | InternTable intern_table; |
| 14 | String* foo_1 = intern_table.Intern(3, "foo"); |
| 15 | String* foo_2 = intern_table.Intern(3, "foo"); |
Elliott Hughes | bfaadc8 | 2011-08-18 17:36:58 -0700 | [diff] [blame] | 16 | String* foo_3 = String::AllocFromModifiedUtf8("foo"); |
Brian Carlstrom | 7e93b50 | 2011-08-04 14:16:22 -0700 | [diff] [blame] | 17 | String* bar = intern_table.Intern(3, "bar"); |
| 18 | EXPECT_TRUE(foo_1->Equals("foo")); |
| 19 | EXPECT_TRUE(foo_2->Equals("foo")); |
| 20 | EXPECT_TRUE(foo_3->Equals("foo")); |
| 21 | EXPECT_TRUE(foo_1 != NULL); |
| 22 | EXPECT_TRUE(foo_2 != NULL); |
| 23 | EXPECT_EQ(foo_1, foo_2); |
| 24 | EXPECT_NE(foo_1, bar); |
| 25 | EXPECT_NE(foo_2, bar); |
| 26 | EXPECT_NE(foo_3, bar); |
| 27 | } |
| 28 | |
| 29 | } // namespace art |