diff options
author | danakj <danakj@chromium.org> | 2015-11-24 21:29:58 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-11-25 05:30:56 +0000 |
commit | 0c8d4aa8ba54f463cc22ce21bf1088edd3d1e207 (patch) | |
tree | 02600e7d74e72eaa08f2eb3d47697a8d35f34390 /base/memory/ref_counted_unittest.cc | |
parent | 7296f934bf1ab8c1b62e49c81f2eecb397389144 (diff) | |
download | chromium_src-0c8d4aa8ba54f463cc22ce21bf1088edd3d1e207.zip chromium_src-0c8d4aa8ba54f463cc22ce21bf1088edd3d1e207.tar.gz chromium_src-0c8d4aa8ba54f463cc22ce21bf1088edd3d1e207.tar.bz2 |
base: Use std::move() instead of Pass() for real movable types.
Some of our movable types have real move-constructors/assignment
operators now. We can use std::move() for these types instead of Pass().
There's still some move-only types that are implemented using an
"Rvalue" type emulation, so we have to keep Pass() for those still.
R=thestig@chromium.org
BUG=557422
Review URL: https://codereview.chromium.org/1479473002
Cr-Commit-Position: refs/heads/master@{#361583}
Diffstat (limited to 'base/memory/ref_counted_unittest.cc')
-rw-r--r-- | base/memory/ref_counted_unittest.cc | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/base/memory/ref_counted_unittest.cc b/base/memory/ref_counted_unittest.cc index 6f8e599..dbc6f33 100644 --- a/base/memory/ref_counted_unittest.cc +++ b/base/memory/ref_counted_unittest.cc @@ -180,26 +180,6 @@ TEST(RefCountedUnitTest, ConvertibleEquality) { EXPECT_EQ(p2, p1); } -TEST(RefCountedUnitTest, SelfMoveAssignment) { - ScopedRefPtrCountBase::reset_count(); - - { - ScopedRefPtrCountBase *raw = new ScopedRefPtrCountBase(); - scoped_refptr<ScopedRefPtrCountBase> p(raw); - EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); - EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - - p = p.Pass(); - EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); - EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - EXPECT_EQ(raw, p.get()); - - // p goes out of scope. - } - EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); - EXPECT_EQ(1, ScopedRefPtrCountBase::destructor_count()); -} - TEST(RefCountedUnitTest, MoveAssignment1) { ScopedRefPtrCountBase::reset_count(); @@ -212,7 +192,7 @@ TEST(RefCountedUnitTest, MoveAssignment1) { { scoped_refptr<ScopedRefPtrCountBase> p2; - p2 = p1.Pass(); + p2 = std::move(p1); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(nullptr, p1.get()); @@ -243,7 +223,7 @@ TEST(RefCountedUnitTest, MoveAssignment2) { EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - p1 = p2.Pass(); + p1 = std::move(p2); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(raw, p1.get()); @@ -274,7 +254,7 @@ TEST(RefCountedUnitTest, MoveAssignmentSameInstance1) { EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - p1 = p2.Pass(); + p1 = std::move(p2); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(raw, p1.get()); @@ -305,7 +285,7 @@ TEST(RefCountedUnitTest, MoveAssignmentSameInstance2) { EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - p2 = p1.Pass(); + p2 = std::move(p1); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(nullptr, p1.get()); @@ -337,7 +317,7 @@ TEST(RefCountedUnitTest, MoveAssignmentDifferentInstances) { EXPECT_EQ(2, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); - p1 = p2.Pass(); + p1 = std::move(p2); EXPECT_EQ(2, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(1, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(raw2, p1.get()); @@ -374,7 +354,7 @@ TEST(RefCountedUnitTest, MoveAssignmentDerived) { EXPECT_EQ(1, ScopedRefPtrCountDerived::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountDerived::destructor_count()); - p1 = p2.Pass(); + p1 = std::move(p2); EXPECT_EQ(2, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(1, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(1, ScopedRefPtrCountDerived::constructor_count()); @@ -407,7 +387,7 @@ TEST(RefCountedUnitTest, MoveConstructor) { EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); { - scoped_refptr<ScopedRefPtrCountBase> p2(p1.Pass()); + scoped_refptr<ScopedRefPtrCountBase> p2(std::move(p1)); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(nullptr, p1.get()); @@ -437,7 +417,7 @@ TEST(RefCountedUnitTest, MoveConstructorDerived) { EXPECT_EQ(0, ScopedRefPtrCountDerived::destructor_count()); { - scoped_refptr<ScopedRefPtrCountBase> p2(p1.Pass()); + scoped_refptr<ScopedRefPtrCountBase> p2(std::move(p1)); EXPECT_EQ(1, ScopedRefPtrCountBase::constructor_count()); EXPECT_EQ(0, ScopedRefPtrCountBase::destructor_count()); EXPECT_EQ(1, ScopedRefPtrCountDerived::constructor_count()); |