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

Unified Diff: test/equality_test.dart

Issue 1213723007: Update to test package, make test work on dart2js. (Closed) Base URL: https://github.com/dart-lang/collection.git@master
Patch Set: Also update version. Created 5 years, 6 months 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
« no previous file with comments | « test/canonicalized_map_test.dart ('k') | test/iterable_zip_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/equality_test.dart
diff --git a/test/equality_test.dart b/test/equality_test.dart
index edabfd5925d0e91bf116a33c1eb3287825bffc99..e6096085a9d761ba4094fdfa4730a2de37581299 100644
--- a/test/equality_test.dart
+++ b/test/equality_test.dart
@@ -6,113 +6,112 @@
import "dart:collection";
import "package:collection/collection.dart";
-import "package:unittest/unittest.dart";
+import "package:test/test.dart";
main() {
+ o(id) => new Element(id);
+
+ // Lists that are point-wise equal, but not identical.
+ var list1 = [o(1), o(2), o(3), o(4), o(5)];
+ var list2 = [o(1), o(2), o(3), o(4), o(5)];
+ // Similar length list with equal elements in different order.
+ var list3 = [o(1), o(3), o(5), o(4), o(2)];
+
test("IterableEquality - List", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 2.0, 3.0, 4.0, 5.0];
- expect(const IterableEquality().equals(l1, l2), isTrue);
+ expect(const IterableEquality().equals(list1, list2), isTrue);
Equality iterId = const IterableEquality(const IdentityEquality());
- expect(iterId.equals(l1, l2), isFalse); /// 01: ok
Søren Gjesse 2015/07/01 12:23:25 Are these "status-file" comments leftovers, or sho
Lasse Reichstein Nielsen 2015/07/03 12:53:01 They were basically left-overs because the status
+ expect(iterId.equals(list1, list2), isFalse);
});
test("IterableEquality - LinkedSet", () {
- var l1 = new LinkedHashSet.from([1, 2, 3, 4, 5]);
- var l2 = new LinkedHashSet.from([1.0, 2.0, 3.0, 4.0, 5.0]);
+ var l1 = new LinkedHashSet.from(list1);
+ var l2 = new LinkedHashSet.from(list2);
expect(const IterableEquality().equals(l1, l2), isTrue);
Equality iterId = const IterableEquality(const IdentityEquality());
- expect(iterId.equals(l1, l2), isFalse); /// 02: ok
+ expect(iterId.equals(l1, l2), isFalse);
});
test("ListEquality", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 2.0, 3.0, 4.0, 5.0];
- expect(const ListEquality().equals(l1, l2),
+ expect(const ListEquality().equals(list1, list2),
isTrue);
Equality listId = const ListEquality(const IdentityEquality());
- expect(listId.equals(l1, l2), isFalse); /// 03: ok
+ expect(listId.equals(list1, list2), isFalse);
});
test("ListInequality length", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0];
- expect(const ListEquality().equals(l1, l2),
+ var list4 = [o(1), o(2), o(3), o(4), o(5), o(6)];
+ expect(const ListEquality().equals(list1, list4),
isFalse);
- expect(const ListEquality(const IdentityEquality()).equals(l1, l2),
+ expect(const ListEquality(const IdentityEquality()).equals(list1, list4),
isFalse);
});
test("ListInequality value", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 2.0, 3.0, 4.0, 6.0];
- expect(const ListEquality().equals(l1, l2),
+ var list5 = [o(1), o(2), o(3), o(4), o(6)];
+ expect(const ListEquality().equals(list1, list5),
isFalse);
- expect(const ListEquality(const IdentityEquality()).equals(l1, l2),
+ expect(const ListEquality(const IdentityEquality()).equals(list1, list5),
isFalse);
});
test("UnorderedIterableEquality", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 3.0, 5.0, 4.0, 2.0];
- expect(const UnorderedIterableEquality().equals(l1, l2),
+ expect(const UnorderedIterableEquality().equals(list1, list3),
isTrue);
Equality uniterId =
const UnorderedIterableEquality(const IdentityEquality());
- expect(uniterId.equals(l1, l2), isFalse); /// 04: ok
+ expect(uniterId.equals(list1, list3), isFalse);
});
test("UnorderedIterableInequality length", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 3.0, 5.0, 4.0, 2.0, 1.0];
- expect(const UnorderedIterableEquality().equals(l1, l2),
+ var list6 = [o(1), o(3), o(5), o(4), o(2), o(1)];
+ expect(const UnorderedIterableEquality().equals(list1, list6),
isFalse);
expect(const UnorderedIterableEquality(const IdentityEquality())
- .equals(l1, l2),
+ .equals(list1, list6),
isFalse);
});
test("UnorderedIterableInequality values", () {
- var l1 = [1, 2, 3, 4, 5];
- var l2 = [1.0, 3.0, 5.0, 4.0, 6.0];
- expect(const UnorderedIterableEquality().equals(l1, l2),
+ var list7 = [o(1), o(3), o(5), o(4), o(6)];
+ expect(const UnorderedIterableEquality().equals(list1, list7),
isFalse);
expect(const UnorderedIterableEquality(const IdentityEquality())
- .equals(l1, l2),
+ .equals(list1, list7),
isFalse);
});
test("SetEquality", () {
- var l1 = new HashSet.from([1, 2, 3, 4, 5]);
- var l2 = new LinkedHashSet.from([1.0, 3.0, 5.0, 4.0, 2.0]);
- expect(const SetEquality().equals(l1, l2),
- isTrue);
+ var set1 = new HashSet.from(list1);
+ var set2 = new LinkedHashSet.from(list3);
+ expect(const SetEquality().equals(set1, set2), isTrue);
Equality setId = const SetEquality(const IdentityEquality());
- expect(setId.equals(l1, l2), isFalse); /// 05: ok
+ expect(setId.equals(set1, set2), isFalse);
});
test("SetInequality length", () {
- var l1 = new HashSet.from([1, 2, 3, 4, 5]);
- var l2 = new LinkedHashSet.from([1.0, 3.0, 5.0, 4.0, 2.0, 6.0]);
- expect(const SetEquality().equals(l1, l2),
+ var list8 = [o(1), o(3), o(5), o(4), o(2), o(6)];
+ var set1 = new HashSet.from(list1);
+ var set2 = new LinkedHashSet.from(list8);
+ expect(const SetEquality().equals(set1, set2),
isFalse);
- expect(const SetEquality(const IdentityEquality()).equals(l1, l2),
+ expect(const SetEquality(const IdentityEquality()).equals(set1, set2),
isFalse);
});
test("SetInequality value", () {
- var l1 = new HashSet.from([1, 2, 3, 4, 5]);
- var l2 = new LinkedHashSet.from([1.0, 3.0, 5.0, 4.0, 6.0]);
- expect(const SetEquality().equals(l1, l2),
+ var list7 = [o(1), o(3), o(5), o(4), o(6)];
+ var set1 = new HashSet.from(list1);
+ var set2 = new LinkedHashSet.from(list7);
+ expect(const SetEquality().equals(set1, set2),
isFalse);
- expect(const SetEquality(const IdentityEquality()).equals(l1, l2),
+ expect(const SetEquality(const IdentityEquality()).equals(set1, set2),
isFalse);
});
- var map1a = {"x": [1, 2, 3], "y": [true, false, null]};
- var map1b = {"x": [4.0, 5.0, 6.0], "y": [false, true, null]};
- var map2a = {"x": [3.0, 2.0, 1.0], "y": [false, true, null]};
- var map2b = {"x": [6, 5, 4], "y": [null, false, true]};
+ var map1a = {"x": [o(1), o(2), o(3)], "y": [true, false, null]};
+ var map1b = {"x": [o(4), o(5), o(6)], "y": [false, true, null]};
+ var map2a = {"x": [o(3), o(2), o(1)], "y": [false, true, null]};
+ var map2b = {"x": [o(6), o(5), o(4)], "y": [null, false, true]};
var l1 = [map1a, map1b];
var l2 = [map2a, map2b];
var s1 = new Set.from(l1);
@@ -162,3 +161,15 @@ main() {
isTrue);
});
}
+
+/// Wrapper objects for an `id` value.
+///
+/// Compares the `id` value by equality and for comparison.
+/// Allows creating simple objects that are equal without being identical.
+class Element implements Comparable<Element> {
+ final Comparable id;
+ const Element(this.id);
+ int get hashCode => id.hashCode;
+ bool operator==(Object other) => other is Element && id == other.id;
+ int compareTo(other) => id.compareTo(other.id);
+}
« no previous file with comments | « test/canonicalized_map_test.dart ('k') | test/iterable_zip_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698