| // Copyright (c) 2016, 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. |
| |
| /// @assertion bool operator ==(other) |
| /// The equality operator. |
| /// |
| /// The default behavior for all Objects is to return true if and only if this |
| /// and other are the same object. |
| /// |
| /// Override this method to specify a different equality relation on a class. |
| /// The overriding method must still be an equivalence relation. That is, it must |
| /// be: |
| /// ... |
| /// Symmetric: For all objects o1 and o2, o1 == o2 and o2 == o1 must either both |
| /// be true, or both be false. |
| /// ... |
| /// @description Checks that for all objects o1 and o2, o1 == o2 and o2 == o1 is |
| /// either both true, or both false. |
| /// @author sgrekhov@unipro.ru |
| |
| import "../../../Utils/expect.dart"; |
| |
| main() { |
| const o1 = const Object(); |
| Object o2 = new Object(); |
| Object o3 = new Object(); |
| var o4 = o3; |
| |
| Expect.isFalse(o1 == o2); |
| Expect.isFalse(o2 == o1); |
| Expect.isFalse(o2 == o3); |
| Expect.isFalse(o3 == o2); |
| |
| Expect.isTrue(o3 == o4); |
| Expect.isTrue(o4 == o3); |
| } |