blob: 0e7fd4749189d3d2f965998324aea438ff03364f [file] [log] [blame]
/*
* 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.
*/
/**
* @assertion Evaluation of an equality expression ee of the form e1 == e2 proceeds
* as follows:
* - The expression e1 is evaluated to an object o1 .
* - The expression e2 is evaluated to an object o2 .
* - If either o1 or o2 is null, then ee evaluates to identical(o1 , o2 ).
* Otherwise, ee is equivalent to the method invocation o1 .==(o2 ).
* @description Checks that if operands are not not [:null:]
* ee is equivalent to the method invocation o1.==(o2).
* @author msyabro
* @reviewer iefremov
*/
import "../../Utils/expect.dart";
class TestException {}
class A {
operator == (other) {
throw new TestException();
}
}
main() {
A a = new A();
try {
a == 1;
Expect.fail("operator== was not called");
} on TestException catch(e) {}
}