OLD | NEW |
1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 PDFium 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 "core/fxcrt/include/cfx_count_ref.h" | 5 #include "core/fxcrt/include/cfx_count_ref.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "testing/fx_string_testhelpers.h" | 10 #include "testing/fx_string_testhelpers.h" |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 EXPECT_EQ(0, observer.GetDestructionCount("two")); | 102 EXPECT_EQ(0, observer.GetDestructionCount("two")); |
103 } | 103 } |
104 EXPECT_EQ(1, observer.GetDestructionCount("one")); | 104 EXPECT_EQ(1, observer.GetDestructionCount("one")); |
105 EXPECT_EQ(1, observer.GetDestructionCount("two")); | 105 EXPECT_EQ(1, observer.GetDestructionCount("two")); |
106 } | 106 } |
107 | 107 |
108 TEST(fxcrt, CountRefGetModify) { | 108 TEST(fxcrt, CountRefGetModify) { |
109 Observer observer; | 109 Observer observer; |
110 { | 110 { |
111 CFX_CountRef<Object> ptr; | 111 CFX_CountRef<Object> ptr; |
112 ptr.MakePrivateCopy(&observer, std::string("one")); | 112 EXPECT_NE(nullptr, ptr.GetPrivateCopy(&observer, std::string("one"))); |
113 EXPECT_NE(nullptr, ptr.GetObject()); | |
114 EXPECT_EQ(1, observer.GetConstructionCount("one")); | 113 EXPECT_EQ(1, observer.GetConstructionCount("one")); |
115 EXPECT_EQ(0, observer.GetDestructionCount("one")); | 114 EXPECT_EQ(0, observer.GetDestructionCount("one")); |
116 | 115 |
117 ptr.MakePrivateCopy(&observer, std::string("one")); | 116 EXPECT_NE(nullptr, ptr.GetPrivateCopy(&observer, std::string("one"))); |
118 EXPECT_NE(nullptr, ptr.GetObject()); | |
119 EXPECT_EQ(1, observer.GetConstructionCount("one")); | 117 EXPECT_EQ(1, observer.GetConstructionCount("one")); |
120 EXPECT_EQ(0, observer.GetDestructionCount("one")); | 118 EXPECT_EQ(0, observer.GetDestructionCount("one")); |
121 { | 119 { |
122 CFX_CountRef<Object> other(ptr); | 120 CFX_CountRef<Object> other(ptr); |
123 ptr.MakePrivateCopy(&observer, std::string("one")); | 121 EXPECT_NE(nullptr, ptr.GetPrivateCopy(&observer, std::string("one"))); |
124 EXPECT_NE(nullptr, ptr.GetObject()); | |
125 EXPECT_EQ(2, observer.GetConstructionCount("one")); | 122 EXPECT_EQ(2, observer.GetConstructionCount("one")); |
126 EXPECT_EQ(0, observer.GetDestructionCount("one")); | 123 EXPECT_EQ(0, observer.GetDestructionCount("one")); |
127 } | 124 } |
128 EXPECT_EQ(2, observer.GetConstructionCount("one")); | 125 EXPECT_EQ(2, observer.GetConstructionCount("one")); |
129 EXPECT_EQ(1, observer.GetDestructionCount("one")); | 126 EXPECT_EQ(1, observer.GetDestructionCount("one")); |
130 } | 127 } |
131 EXPECT_EQ(2, observer.GetDestructionCount("one")); | 128 EXPECT_EQ(2, observer.GetDestructionCount("one")); |
132 } | 129 } |
OLD | NEW |