blob: 6f3d09e66e8e757e0eaa9bb8a7f54fa8b89bd60a [file] [log] [blame] [edit]
// Copyright (c) 2013, 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.
import "package:expect/expect.dart";
class A {
const A();
bool operator ==(Object other) {
return false;
}
}
class B {
bool operator ==(Object other) {
Expect.fail("Bad equality order.");
}
}
main() {
test(iterable) {
Expect.isFalse(iterable.contains(new B()));
}
var iterables = <dynamic>[
<A>[new A()],
new List<A>(1)..[0] = new A(),
new List<A>()..add(new A()),
const <A>[const A()],
new Set()..add(new A()),
(new Map()..[new A()] = 0).keys,
(new Map()..[0] = new A()).values
];
for (var iterable in iterables) {
test(iterable);
test(iterable.map((x) => x));
test(iterable.take(1));
}
}