OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/macros.h" | 6 #include "base/macros.h" |
7 #include "base/message_loop/message_loop.h" | 7 #include "base/message_loop/message_loop.h" |
8 #include "base/test/simple_test_tick_clock.h" | 8 #include "base/test/simple_test_tick_clock.h" |
9 #include "components/copresence/timed_map.h" | 9 #include "components/copresence/timed_map.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 public: | 24 public: |
25 TimedMapTest() {} | 25 TimedMapTest() {} |
26 | 26 |
27 private: | 27 private: |
28 // Exists since the timer needs a message loop. | 28 // Exists since the timer needs a message loop. |
29 base::MessageLoop message_loop_; | 29 base::MessageLoop message_loop_; |
30 | 30 |
31 DISALLOW_COPY_AND_ASSIGN(TimedMapTest); | 31 DISALLOW_COPY_AND_ASSIGN(TimedMapTest); |
32 }; | 32 }; |
33 | 33 |
34 TEST_F(TimedMapTest, Basic) { | 34 // TODO(rkc): Find and fix the memory leak here. |
| 35 #define MAYBE_Basic DISABLED_Basic |
| 36 |
| 37 TEST_F(TimedMapTest, MAYBE_Basic) { |
35 typedef copresence::TimedMap<int, Value> Map; | 38 typedef copresence::TimedMap<int, Value> Map; |
36 Map map(base::TimeDelta::FromSeconds(9999), 3); | 39 Map map(base::TimeDelta::FromSeconds(9999), 3); |
37 | 40 |
38 EXPECT_FALSE(map.HasKey(0)); | 41 EXPECT_FALSE(map.HasKey(0)); |
39 EXPECT_EQ(0, map.GetValue(0).value); | 42 EXPECT_EQ(0, map.GetValue(0).value); |
40 | 43 |
41 map.Add(0x1337, Value(0x7331)); | 44 map.Add(0x1337, Value(0x7331)); |
42 EXPECT_TRUE(map.HasKey(0x1337)); | 45 EXPECT_TRUE(map.HasKey(0x1337)); |
43 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); | 46 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); |
44 | 47 |
45 map.Add(0xbaad, Value(0xf00d)); | 48 map.Add(0xbaad, Value(0xf00d)); |
46 EXPECT_TRUE(map.HasKey(0xbaad)); | 49 EXPECT_TRUE(map.HasKey(0xbaad)); |
47 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); | 50 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); |
48 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); | 51 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); |
49 | 52 |
50 map.Add(0x1234, Value(0x5678)); | 53 map.Add(0x1234, Value(0x5678)); |
51 EXPECT_TRUE(map.HasKey(0x1234)); | 54 EXPECT_TRUE(map.HasKey(0x1234)); |
52 EXPECT_TRUE(map.HasKey(0xbaad)); | 55 EXPECT_TRUE(map.HasKey(0xbaad)); |
53 EXPECT_TRUE(map.HasKey(0x1337)); | 56 EXPECT_TRUE(map.HasKey(0x1337)); |
54 | 57 |
55 EXPECT_EQ(0x5678, map.GetValue(0x1234).value); | 58 EXPECT_EQ(0x5678, map.GetValue(0x1234).value); |
56 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); | 59 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); |
57 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); | 60 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); |
58 } | 61 } |
59 | 62 |
60 TEST_F(TimedMapTest, ValueReplacement) { | 63 // TODO(rkc): Find and fix the memory leak here. |
| 64 #define MAYBE_ValueReplacement DISABLED_ValueReplacement |
| 65 |
| 66 TEST_F(TimedMapTest, MAYBE_ValueReplacement) { |
61 typedef copresence::TimedMap<int, Value> Map; | 67 typedef copresence::TimedMap<int, Value> Map; |
62 Map map(base::TimeDelta::FromSeconds(9999), 10); | 68 Map map(base::TimeDelta::FromSeconds(9999), 10); |
63 | 69 |
64 map.Add(0x1337, Value(0x7331)); | 70 map.Add(0x1337, Value(0x7331)); |
65 EXPECT_TRUE(map.HasKey(0x1337)); | 71 EXPECT_TRUE(map.HasKey(0x1337)); |
66 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); | 72 EXPECT_EQ(0x7331, map.GetValue(0x1337).value); |
67 | 73 |
68 map.Add(0xbaad, Value(0xf00d)); | 74 map.Add(0xbaad, Value(0xf00d)); |
69 EXPECT_TRUE(map.HasKey(0xbaad)); | 75 EXPECT_TRUE(map.HasKey(0xbaad)); |
70 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); | 76 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 EXPECT_FALSE(map.HasKey(0x1337)); | 133 EXPECT_FALSE(map.HasKey(0x1337)); |
128 EXPECT_EQ(0, map.GetValue(0x1337).value); | 134 EXPECT_EQ(0, map.GetValue(0x1337).value); |
129 EXPECT_TRUE(map.HasKey(0xbaad)); | 135 EXPECT_TRUE(map.HasKey(0xbaad)); |
130 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); | 136 EXPECT_EQ(0xf00d, map.GetValue(0xbaad).value); |
131 | 137 |
132 // Check values at T=2*kLargeTimeValueSeconds | 138 // Check values at T=2*kLargeTimeValueSeconds |
133 clock.Advance(base::TimeDelta::FromSeconds(kLargeTimeValueSeconds)); | 139 clock.Advance(base::TimeDelta::FromSeconds(kLargeTimeValueSeconds)); |
134 EXPECT_FALSE(map.HasKey(0xbaad)); | 140 EXPECT_FALSE(map.HasKey(0xbaad)); |
135 EXPECT_EQ(0, map.GetValue(0xbaad).value); | 141 EXPECT_EQ(0, map.GetValue(0xbaad).value); |
136 } | 142 } |
OLD | NEW |