blob: 3133cfd908c61237b6f8fe0ef28f1ae44ae9d2be [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 A relational expression of the form e1 op e2 is equivalent to
* the method invocation e1.op(e2).
* @description Checks that a relational expression of the form e1 < e2
* is equivalent to the method invocation e1.operator<(e2).
* @author kaigorodov
*/
import '../../../Utils/expect.dart';
var logStr = "";
class A {
operator <(var v) {
logStr = "${logStr}<";
return true;
}
operator >(var v) {
logStr = "${logStr}>";
return true;
}
operator <=(var v) {
logStr = "${logStr}<=";
return true;
}
operator >=(var v) {
logStr = "${logStr}>=";
return true;
}
}
main() {
logStr = "";
A a = new A();
a < 1;
a > 1;
a <= 1;
a >= 1;
Expect.equals("<><=>=", logStr);
}