Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3483)

Unified Diff: base/containers/scoped_ptr_map_unittest.cc

Issue 1486333002: Kill ScopedPtrMap and friends (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: base/containers/scoped_ptr_map_unittest.cc
diff --git a/base/containers/scoped_ptr_map_unittest.cc b/base/containers/scoped_ptr_map_unittest.cc
deleted file mode 100644
index f8a9779f3dc062a5e132831338ae194b61b122cd..0000000000000000000000000000000000000000
--- a/base/containers/scoped_ptr_map_unittest.cc
+++ /dev/null
@@ -1,244 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/containers/scoped_ptr_map.h"
-
-#include <functional>
-#include <map>
-#include <utility>
-
-#include "base/bind.h"
-#include "base/callback.h"
-#include "base/memory/scoped_ptr.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace base {
-namespace {
-
-namespace namespace_with_ignore_result {
-
-class Value {};
-
-template <typename T>
-void ignore_result(const T&) {}
-
-} // namespace namespace_with_ignore_result
-
-// A ScopedDestroyer sets a Boolean to true upon destruction.
-class ScopedDestroyer {
- public:
- ScopedDestroyer(bool* destroyed) : destroyed_(destroyed) {
- *destroyed_ = false;
- }
-
- ~ScopedDestroyer() { *destroyed_ = true; }
-
- private:
- bool* destroyed_;
-};
-
-TEST(ScopedPtrMapTest, Insert) {
- bool destroyed1 = false;
- bool destroyed2 = false;
- {
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
-
- // Insert to new key.
- ScopedDestroyer* elem1 = new ScopedDestroyer(&destroyed1);
- EXPECT_FALSE(destroyed1);
- EXPECT_TRUE(scoped_map.insert(0, make_scoped_ptr(elem1)).second);
- EXPECT_EQ(elem1, scoped_map.find(0)->second);
- EXPECT_FALSE(destroyed1);
-
- // Insert to existing key.
- ScopedDestroyer* elem2 = new ScopedDestroyer(&destroyed2);
- EXPECT_FALSE(destroyed2);
- EXPECT_FALSE(scoped_map.insert(0, make_scoped_ptr(elem2)).second);
- EXPECT_EQ(elem1, scoped_map.find(0)->second);
-
- EXPECT_FALSE(destroyed1);
- EXPECT_TRUE(destroyed2);
- }
- EXPECT_TRUE(destroyed1);
-}
-
-TEST(ScopedPtrMapTest, Set) {
- bool destroyed1 = false;
- bool destroyed2 = false;
- {
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
-
- // Set a new key.
- ScopedDestroyer* elem1 = new ScopedDestroyer(&destroyed1);
- EXPECT_FALSE(destroyed1);
- scoped_map.set(0, make_scoped_ptr(elem1));
- EXPECT_EQ(elem1, scoped_map.find(0)->second);
- EXPECT_FALSE(destroyed1);
-
- // Set to replace an existing key.
- ScopedDestroyer* elem2 = new ScopedDestroyer(&destroyed2);
- EXPECT_FALSE(destroyed2);
- scoped_map.set(0, make_scoped_ptr(elem2));
- EXPECT_EQ(elem2, scoped_map.find(0)->second);
-
- EXPECT_TRUE(destroyed1);
- EXPECT_FALSE(destroyed2);
- }
- EXPECT_TRUE(destroyed1);
- EXPECT_TRUE(destroyed2);
-}
-
-TEST(ScopedPtrMapTest, EraseIterator) {
- bool destroyed = false;
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- scoped_map.insert(0, make_scoped_ptr(new ScopedDestroyer(&destroyed)));
- EXPECT_FALSE(destroyed);
- scoped_map.erase(scoped_map.find(0));
- EXPECT_TRUE(destroyed);
- EXPECT_TRUE(scoped_map.empty());
-}
-
-TEST(ScopedPtrMapTest, EraseKey) {
- bool destroyed = false;
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- scoped_map.insert(0, make_scoped_ptr(new ScopedDestroyer(&destroyed)));
- EXPECT_FALSE(destroyed);
- EXPECT_EQ(1u, scoped_map.erase(0));
- EXPECT_TRUE(destroyed);
- EXPECT_TRUE(scoped_map.empty());
-
- // Test erase of a non-existent key.
- EXPECT_EQ(0u, scoped_map.erase(7));
-}
-
-TEST(ScopedPtrMapTest, EraseRange) {
- bool destroyed1 = false;
- bool destroyed2 = false;
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
-
- scoped_map.insert(0, make_scoped_ptr(new ScopedDestroyer(&destroyed1)));
- EXPECT_FALSE(destroyed1);
-
- scoped_map.insert(1, make_scoped_ptr(new ScopedDestroyer(&destroyed2)));
- EXPECT_FALSE(destroyed2);
-
- scoped_map.erase(scoped_map.find(0), scoped_map.end());
- EXPECT_TRUE(destroyed1);
- EXPECT_TRUE(destroyed2);
- EXPECT_TRUE(scoped_map.empty());
-}
-
-TEST(ScopedPtrMapTest, TakeAndErase) {
- bool destroyed = false;
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- ScopedDestroyer* elem = new ScopedDestroyer(&destroyed);
- scoped_map.insert(0, make_scoped_ptr(elem));
- EXPECT_EQ(elem, scoped_map.find(0)->second);
- EXPECT_FALSE(destroyed);
- scoped_ptr<ScopedDestroyer> object = scoped_map.take_and_erase(0);
- EXPECT_EQ(elem, object.get());
- EXPECT_FALSE(destroyed);
- EXPECT_TRUE(scoped_map.empty());
- object.reset();
- EXPECT_TRUE(destroyed);
-}
-
-TEST(ScopedPtrMapTest, Clear) {
- bool destroyed = false;
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- scoped_map.insert(0, make_scoped_ptr(new ScopedDestroyer(&destroyed)));
- EXPECT_FALSE(destroyed);
- scoped_map.clear();
- EXPECT_TRUE(destroyed);
- EXPECT_TRUE(scoped_map.empty());
-}
-
-TEST(ScopedPtrMapTest, Compare) {
- // Construct a ScopedPtrMap with a custom comparison function.
- ScopedPtrMap<int, scoped_ptr<int>, std::greater<int>> scoped_map1;
- scoped_map1.insert(0, make_scoped_ptr(new int(0)));
- scoped_map1.insert(1, make_scoped_ptr(new int(0)));
-
- auto it = scoped_map1.begin();
- EXPECT_EQ(1, it->first);
- ++it;
- EXPECT_EQ(0, it->first);
-
- // Test the move constructor.
- ScopedPtrMap<int, scoped_ptr<int>, std::greater<int>> scoped_map2(
- std::move(scoped_map1));
- EXPECT_EQ(2u, scoped_map2.size());
- EXPECT_TRUE(scoped_map1.empty());
-
- // Test move assignment.
- scoped_map1 = std::move(scoped_map2);
- EXPECT_EQ(2u, scoped_map1.size());
- EXPECT_TRUE(scoped_map2.empty());
-
- // Test swap.
- scoped_map2.swap(scoped_map1);
- EXPECT_EQ(2u, scoped_map2.size());
- EXPECT_TRUE(scoped_map1.empty());
-}
-
-TEST(ScopedPtrMapTest, Scope) {
- bool destroyed = false;
- {
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- scoped_map.insert(0, make_scoped_ptr(new ScopedDestroyer(&destroyed)));
- EXPECT_FALSE(destroyed);
- }
- EXPECT_TRUE(destroyed);
-}
-
-TEST(ScopedPtrMapTest, MoveConstruct) {
- bool destroyed = false;
- {
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- ScopedDestroyer* elem = new ScopedDestroyer(&destroyed);
- scoped_map.insert(0, make_scoped_ptr(elem));
- EXPECT_EQ(elem, scoped_map.find(0)->second);
- EXPECT_FALSE(destroyed);
- EXPECT_FALSE(scoped_map.empty());
-
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map_copy(
- std::move(scoped_map));
- EXPECT_TRUE(scoped_map.empty());
- EXPECT_FALSE(scoped_map_copy.empty());
- EXPECT_EQ(elem, scoped_map_copy.find(0)->second);
- EXPECT_FALSE(destroyed);
- }
- EXPECT_TRUE(destroyed);
-}
-
-TEST(ScopedPtrMapTest, MoveAssign) {
- bool destroyed = false;
- {
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map;
- ScopedDestroyer* elem = new ScopedDestroyer(&destroyed);
- scoped_map.insert(0, make_scoped_ptr(elem));
- EXPECT_EQ(elem, scoped_map.find(0)->second);
- EXPECT_FALSE(destroyed);
- EXPECT_FALSE(scoped_map.empty());
-
- ScopedPtrMap<int, scoped_ptr<ScopedDestroyer>> scoped_map_assign;
- scoped_map_assign = std::move(scoped_map);
- EXPECT_TRUE(scoped_map.empty());
- EXPECT_FALSE(scoped_map_assign.empty());
- EXPECT_EQ(elem, scoped_map_assign.find(0)->second);
- EXPECT_FALSE(destroyed);
- }
- EXPECT_TRUE(destroyed);
-}
-
-// Test that using a value type from a namespace containing an ignore_result
-// function compiles correctly.
-TEST(ScopedPtrMapTest, IgnoreResultCompile) {
- ScopedPtrMap<int, scoped_ptr<namespace_with_ignore_result::Value>> scoped_map;
- scoped_map.insert(1,
- make_scoped_ptr(new namespace_with_ignore_result::Value));
-}
-
-} // namespace
-} // namespace base

Powered by Google App Engine
This is Rietveld 408576698