Chromium Code Reviews| Index: tests/corelib/set_test.dart |
| diff --git a/tests/corelib/set_test.dart b/tests/corelib/set_test.dart |
| index 50b96a02ef03ca67649c9e71e8e29cf726b75f90..d44bab8777a6b91f5feae7a53321216ae3d217b3 100644 |
| --- a/tests/corelib/set_test.dart |
| +++ b/tests/corelib/set_test.dart |
| @@ -1,171 +1,169 @@ |
| -// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| -// for details. All rights reserved. Use of this source code is governed by a |
| -// BSD-style license that can be found in the LICENSE file. |
| - |
| -class SetTest { |
| +library set_test; |
|
floitsch
2013/02/27 16:31:11
copyright.
|
| - static testMain() { |
| - Set set = new Set(); |
| - Expect.equals(0, set.length); |
| - set.add(1); |
| - Expect.equals(1, set.length); |
| - Expect.equals(true, set.contains(1)); |
| - |
| - set.add(1); |
| - Expect.equals(1, set.length); |
| - Expect.equals(true, set.contains(1)); |
| - |
| - set.remove(1); |
| - Expect.equals(0, set.length); |
| - Expect.equals(false, set.contains(1)); |
| - |
| - for (int i = 0; i < 10; i++) { |
| - set.add(i); |
| - } |
| - |
| - Expect.equals(10, set.length); |
| - for (int i = 0; i < 10; i++) { |
| - Expect.equals(true, set.contains(i)); |
| - } |
| - |
| - Expect.equals(10, set.length); |
| - |
| - for (int i = 10; i < 20; i++) { |
| - Expect.equals(false, set.contains(i)); |
| - } |
| - |
| - // Test Set.forEach. |
| - int sum = 0; |
| - testForEach(int val) { |
| - sum += (val + 1); |
| - } |
| - |
| - set.forEach(testForEach); |
| - Expect.equals(10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1, sum); |
| - |
| - Expect.equals(true, set.isSubsetOf(set)); |
| - Expect.equals(true, set.containsAll(set)); |
| - |
| - // Test Set.map. |
| - testMap(int val) { |
| - return val * val; |
| - } |
| - |
| - Set mapped = set.map(testMap).toSet(); |
| - Expect.equals(10, mapped.length); |
| - |
| - Expect.equals(true, mapped.contains(0)); |
| - Expect.equals(true, mapped.contains(1)); |
| - Expect.equals(true, mapped.contains(4)); |
| - Expect.equals(true, mapped.contains(9)); |
| - Expect.equals(true, mapped.contains(16)); |
| - Expect.equals(true, mapped.contains(25)); |
| - Expect.equals(true, mapped.contains(36)); |
| - Expect.equals(true, mapped.contains(49)); |
| - Expect.equals(true, mapped.contains(64)); |
| - Expect.equals(true, mapped.contains(81)); |
| - |
| - sum = 0; |
| - set.forEach(testForEach); |
| - Expect.equals(10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1, sum); |
| - |
| - sum = 0; |
| - |
| - mapped.forEach(testForEach); |
| - Expect.equals(1 + 2 + 5 + 10 + 17 + 26 + 37 + 50 + 65 + 82, sum); |
| - |
| - // Test Set.filter. |
| - testFilter(int val) { |
| - return val.isEven; |
| - } |
| - |
| - Set filtered = set.where(testFilter).toSet(); |
| - |
| - Expect.equals(5, filtered.length); |
| - |
| - Expect.equals(true, filtered.contains(0)); |
| - Expect.equals(true, filtered.contains(2)); |
| - Expect.equals(true, filtered.contains(4)); |
| - Expect.equals(true, filtered.contains(6)); |
| - Expect.equals(true, filtered.contains(8)); |
| - |
| - sum = 0; |
| - filtered.forEach(testForEach); |
| - Expect.equals(1 + 3 + 5 + 7 + 9, sum); |
| - |
| - Expect.equals(true, set.containsAll(filtered)); |
| - Expect.equals(true, filtered.isSubsetOf(set)); |
| - |
| - // Test Set.every. |
| - testEvery(int val) { |
| - return (val < 10); |
| - } |
| - |
| - Expect.equals(true, set.every(testEvery)); |
| - Expect.equals(true, filtered.every(testEvery)); |
| - |
| - filtered.add(10); |
| - Expect.equals(false, filtered.every(testEvery)); |
| - |
| - // Test Set.some. |
| - testSome(int val) { |
| - return (val == 4); |
| - } |
| - |
| - Expect.equals(true, set.any(testSome)); |
| - Expect.equals(true, filtered.any(testSome)); |
| - filtered.remove(4); |
| - Expect.equals(false, filtered.any(testSome)); |
| - |
| - // Test Set.intersection. |
| - Set intersection = set.intersection(filtered); |
| - Expect.equals(true, set.contains(0)); |
| - Expect.equals(true, set.contains(2)); |
| - Expect.equals(true, set.contains(6)); |
| - Expect.equals(true, set.contains(8)); |
| - Expect.equals(false, intersection.contains(1)); |
| - Expect.equals(false, intersection.contains(3)); |
| - Expect.equals(false, intersection.contains(4)); |
| - Expect.equals(false, intersection.contains(5)); |
| - Expect.equals(false, intersection.contains(7)); |
| - Expect.equals(false, intersection.contains(9)); |
| - Expect.equals(false, intersection.contains(10)); |
| - Expect.equals(4, intersection.length); |
| - |
| - Expect.equals(true, set.containsAll(intersection)); |
| - Expect.equals(true, filtered.containsAll(intersection)); |
| - Expect.equals(true, intersection.isSubsetOf(set)); |
| - Expect.equals(true, intersection.isSubsetOf(filtered)); |
| - |
| - // Test Set.addAll. |
| - List list = new List(10); |
| - for (int i = 0; i < 10; i++) { |
| - list[i] = i + 10; |
| - } |
| - set.addAll(list); |
| - Expect.equals(20, set.length); |
| - for (int i = 0; i < 20; i++) { |
| - Expect.equals(true, set.contains(i)); |
| - } |
| - |
| - // Test Set.removeAll |
| - set.removeAll(list); |
| - Expect.equals(10, set.length); |
| - for (int i = 0; i < 10; i++) { |
| - Expect.equals(true, set.contains(i)); |
| - } |
| - for (int i = 10; i < 20; i++) { |
| - Expect.equals(false, set.contains(i)); |
| - } |
| - |
| - // Test Set.clear. |
| - set.clear(); |
| - Expect.equals(0, set.length); |
| - set.add(11); |
| - Expect.equals(1, set.length); |
| +import "dart:collection"; |
| + |
| +void testMain(Set create()) { |
| + Set set = create(); |
| + Expect.equals(0, set.length); |
| + set.add(1); |
| + Expect.equals(1, set.length); |
| + Expect.equals(true, set.contains(1)); |
| + |
| + set.add(1); |
| + Expect.equals(1, set.length); |
| + Expect.equals(true, set.contains(1)); |
| + |
| + set.remove(1); |
| + Expect.equals(0, set.length); |
| + Expect.equals(false, set.contains(1)); |
| + |
| + for (int i = 0; i < 10; i++) { |
| + set.add(i); |
| + } |
| + |
| + Expect.equals(10, set.length); |
| + for (int i = 0; i < 10; i++) { |
| + Expect.equals(true, set.contains(i)); |
| + } |
| + |
| + Expect.equals(10, set.length); |
| + |
| + for (int i = 10; i < 20; i++) { |
| + Expect.equals(false, set.contains(i)); |
| + } |
| + |
| + // Test Set.forEach. |
| + int sum = 0; |
| + testForEach(int val) { |
| + sum += (val + 1); |
| + } |
| + |
| + set.forEach(testForEach); |
| + Expect.equals(10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1, sum); |
| + |
| + Expect.equals(true, set.isSubsetOf(set)); |
| + Expect.equals(true, set.containsAll(set)); |
| + |
| + // Test Set.map. |
| + testMap(int val) { |
| + return val * val; |
| + } |
| + |
| + Set mapped = set.map(testMap).toSet(); |
| + Expect.equals(10, mapped.length); |
| + |
| + Expect.equals(true, mapped.contains(0)); |
| + Expect.equals(true, mapped.contains(1)); |
| + Expect.equals(true, mapped.contains(4)); |
| + Expect.equals(true, mapped.contains(9)); |
| + Expect.equals(true, mapped.contains(16)); |
| + Expect.equals(true, mapped.contains(25)); |
| + Expect.equals(true, mapped.contains(36)); |
| + Expect.equals(true, mapped.contains(49)); |
| + Expect.equals(true, mapped.contains(64)); |
| + Expect.equals(true, mapped.contains(81)); |
| + |
| + sum = 0; |
| + set.forEach(testForEach); |
| + Expect.equals(10 + 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1, sum); |
| + |
| + sum = 0; |
| + |
| + mapped.forEach(testForEach); |
| + Expect.equals(1 + 2 + 5 + 10 + 17 + 26 + 37 + 50 + 65 + 82, sum); |
| + |
| + // Test Set.filter. |
| + testFilter(int val) { |
| + return val.isEven; |
| + } |
| + |
| + Set filtered = set.where(testFilter).toSet(); |
| + |
| + Expect.equals(5, filtered.length); |
| + |
| + Expect.equals(true, filtered.contains(0)); |
| + Expect.equals(true, filtered.contains(2)); |
| + Expect.equals(true, filtered.contains(4)); |
| + Expect.equals(true, filtered.contains(6)); |
| + Expect.equals(true, filtered.contains(8)); |
| + |
| + sum = 0; |
| + filtered.forEach(testForEach); |
| + Expect.equals(1 + 3 + 5 + 7 + 9, sum); |
| + |
| + Expect.equals(true, set.containsAll(filtered)); |
| + Expect.equals(true, filtered.isSubsetOf(set)); |
| + |
| + // Test Set.every. |
| + testEvery(int val) { |
| + return (val < 10); |
| + } |
| + |
| + Expect.equals(true, set.every(testEvery)); |
| + Expect.equals(true, filtered.every(testEvery)); |
| + |
| + filtered.add(10); |
| + Expect.equals(false, filtered.every(testEvery)); |
| + |
| + // Test Set.some. |
| + testSome(int val) { |
| + return (val == 4); |
| + } |
| + |
| + Expect.equals(true, set.any(testSome)); |
| + Expect.equals(true, filtered.any(testSome)); |
| + filtered.remove(4); |
| + Expect.equals(false, filtered.any(testSome)); |
| + |
| + // Test Set.intersection. |
| + Set intersection = set.intersection(filtered); |
| + Expect.equals(true, set.contains(0)); |
| + Expect.equals(true, set.contains(2)); |
| + Expect.equals(true, set.contains(6)); |
| + Expect.equals(true, set.contains(8)); |
| + Expect.equals(false, intersection.contains(1)); |
| + Expect.equals(false, intersection.contains(3)); |
| + Expect.equals(false, intersection.contains(4)); |
| + Expect.equals(false, intersection.contains(5)); |
| + Expect.equals(false, intersection.contains(7)); |
| + Expect.equals(false, intersection.contains(9)); |
| + Expect.equals(false, intersection.contains(10)); |
| + Expect.equals(4, intersection.length); |
| + |
| + Expect.equals(true, set.containsAll(intersection)); |
| + Expect.equals(true, filtered.containsAll(intersection)); |
| + Expect.equals(true, intersection.isSubsetOf(set)); |
| + Expect.equals(true, intersection.isSubsetOf(filtered)); |
| + |
| + // Test Set.addAll. |
| + List list = new List.fixedLength(10); |
| + for (int i = 0; i < 10; i++) { |
| + list[i] = i + 10; |
| } |
| + set.addAll(list); |
| + Expect.equals(20, set.length); |
| + for (int i = 0; i < 20; i++) { |
| + Expect.equals(true, set.contains(i)); |
| + } |
| + |
| + // Test Set.removeAll |
| + set.removeAll(list); |
| + Expect.equals(10, set.length); |
| + for (int i = 0; i < 10; i++) { |
| + Expect.equals(true, set.contains(i)); |
| + } |
| + for (int i = 10; i < 20; i++) { |
| + Expect.equals(false, set.contains(i)); |
| + } |
| + |
| + // Test Set.clear. |
| + set.clear(); |
| + Expect.equals(0, set.length); |
| + set.add(11); |
| + Expect.equals(1, set.length); |
| } |
| main() { |
| - SetTest.testMain(); |
| + testMain(() => new Set()); |
| + testMain(() => new HashSet()); |
| } |