summaryrefslogtreecommitdiff
path: root/Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp')
-rw-r--r--Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp98
1 files changed, 90 insertions, 8 deletions
diff --git a/Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp b/Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp
index a550a845b..b97d866e7 100644
--- a/Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp
+++ b/Tools/TestWebKitAPI/Tests/WTF/ListHashSet.cpp
@@ -78,7 +78,7 @@ TEST(WTF_ListHashSet, AppendOrMoveToLastNewItems)
result = list.appendOrMoveToLast(3);
ASSERT_TRUE(result.isNewEntry);
- ASSERT_EQ(list.size(), 3);
+ ASSERT_EQ(list.size(), 3u);
// The list should be in order 1, 2, 3.
ListHashSet<int>::iterator iterator = list.begin();
@@ -99,11 +99,11 @@ TEST(WTF_ListHashSet, AppendOrMoveToLastWithDuplicates)
ASSERT_TRUE(result.isNewEntry);
result = list.appendOrMoveToLast(1);
ASSERT_FALSE(result.isNewEntry);
- ASSERT_EQ(1, list.size());
+ ASSERT_EQ(1u, list.size());
list.add(2);
list.add(3);
- ASSERT_EQ(3, list.size());
+ ASSERT_EQ(3u, list.size());
// Appending 2 move it to the end.
ASSERT_EQ(3, list.last());
@@ -118,7 +118,7 @@ TEST(WTF_ListHashSet, AppendOrMoveToLastWithDuplicates)
ASSERT_FALSE(result.isNewEntry);
result = list.appendOrMoveToLast(1);
ASSERT_FALSE(result.isNewEntry);
- ASSERT_EQ(3, list.size());
+ ASSERT_EQ(3u, list.size());
ListHashSet<int>::iterator iterator = list.begin();
ASSERT_EQ(3, *iterator);
@@ -139,7 +139,7 @@ TEST(WTF_ListHashSet, PrependOrMoveToLastNewItems)
result = list.prependOrMoveToFirst(3);
ASSERT_TRUE(result.isNewEntry);
- ASSERT_EQ(list.size(), 3);
+ ASSERT_EQ(list.size(), 3u);
// The list should be in order 3, 1, 2.
ListHashSet<int>::iterator iterator = list.begin();
@@ -160,11 +160,11 @@ TEST(WTF_ListHashSet, PrependOrMoveToLastWithDuplicates)
ASSERT_TRUE(result.isNewEntry);
result = list.prependOrMoveToFirst(1);
ASSERT_FALSE(result.isNewEntry);
- ASSERT_EQ(1, list.size());
+ ASSERT_EQ(1u, list.size());
list.add(2);
list.add(3);
- ASSERT_EQ(3, list.size());
+ ASSERT_EQ(3u, list.size());
// Prepending 2 move it to the beginning.
ASSERT_EQ(1, list.first());
@@ -179,7 +179,7 @@ TEST(WTF_ListHashSet, PrependOrMoveToLastWithDuplicates)
ASSERT_FALSE(result.isNewEntry);
result = list.prependOrMoveToFirst(3);
ASSERT_FALSE(result.isNewEntry);
- ASSERT_EQ(3, list.size());
+ ASSERT_EQ(3u, list.size());
ListHashSet<int>::iterator iterator = list.begin();
ASSERT_EQ(3, *iterator);
@@ -266,4 +266,86 @@ TEST(WTF_ListHashSet, MoveOnly)
ASSERT_TRUE(list.isEmpty());
}
+TEST(WTF_ListHashSet, MoveConstructor)
+{
+ ListHashSet<int> list;
+ list.add(1);
+ list.add(2);
+ list.add(3);
+
+ ASSERT_EQ(3U, list.size());
+ auto iterator = list.begin();
+ ASSERT_EQ(1, *iterator);
+ ++iterator;
+ ASSERT_EQ(2, *iterator);
+ ++iterator;
+ ASSERT_EQ(3, *iterator);
+ ++iterator;
+
+ ListHashSet<int> list2(WTFMove(list));
+ ASSERT_EQ(3U, list2.size());
+ auto iterator2 = list2.begin();
+ ASSERT_EQ(1, *iterator2);
+ ++iterator2;
+ ASSERT_EQ(2, *iterator2);
+ ++iterator2;
+ ASSERT_EQ(3, *iterator2);
+ ++iterator2;
+
+ ASSERT_EQ(0U, list.size());
+ ASSERT_TRUE(list.begin() == list.end());
+ list.add(4);
+ list.add(5);
+ list.add(6);
+ iterator = list.begin();
+ ASSERT_EQ(4, *iterator);
+ ++iterator;
+ ASSERT_EQ(5, *iterator);
+ ++iterator;
+ ASSERT_EQ(6, *iterator);
+ ++iterator;
+}
+
+TEST(WTF_ListHashSet, MoveAssignment)
+{
+ ListHashSet<int> list;
+ list.add(1);
+ list.add(2);
+ list.add(3);
+
+ ASSERT_EQ(3U, list.size());
+ auto iterator = list.begin();
+ ASSERT_EQ(1, *iterator);
+ ++iterator;
+ ASSERT_EQ(2, *iterator);
+ ++iterator;
+ ASSERT_EQ(3, *iterator);
+ ++iterator;
+
+ ListHashSet<int> list2;
+ list2.add(10);
+ list2 = (WTFMove(list));
+ ASSERT_EQ(3U, list2.size());
+ auto iterator2 = list2.begin();
+ ASSERT_EQ(1, *iterator2);
+ ++iterator2;
+ ASSERT_EQ(2, *iterator2);
+ ++iterator2;
+ ASSERT_EQ(3, *iterator2);
+ ++iterator2;
+
+ ASSERT_EQ(0U, list.size());
+ ASSERT_TRUE(list.begin() == list.end());
+ list.add(4);
+ list.add(5);
+ list.add(6);
+ iterator = list.begin();
+ ASSERT_EQ(4, *iterator);
+ ++iterator;
+ ASSERT_EQ(5, *iterator);
+ ++iterator;
+ ASSERT_EQ(6, *iterator);
+ ++iterator;
+}
+
} // namespace TestWebKitAPI