| Index: tests/compiler/dart2js_native/native_equals_frog_test.dart
|
| diff --git a/tests/compiler/dart2js_native/native_equals_frog_test.dart b/tests/compiler/dart2js_native/native_equals_frog_test.dart
|
| index b8868a52fedeab9cced299152905c1ffa66fb24d..c6913ec923aeeb9067e744e0001a51e413ab8757 100644
|
| --- a/tests/compiler/dart2js_native/native_equals_frog_test.dart
|
| +++ b/tests/compiler/dart2js_native/native_equals_frog_test.dart
|
| @@ -2,20 +2,35 @@
|
| // 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 "dart:_js_helper";
|
| -import "package:expect/expect.dart";
|
| +import 'native_testing.dart';
|
|
|
| @Native("A")
|
| class A {}
|
|
|
| +int calls = 0;
|
| +@Native("B")
|
| +class B {
|
| + bool operator==(other) {
|
| + ++calls;
|
| + return other is B;
|
| + }
|
| + int get hashCode => 1;
|
| +}
|
| +
|
| makeA() native ;
|
| +makeB() native ;
|
|
|
| void setup() native """
|
| function A() {}
|
| +function B() {}
|
| makeA = function(){return new A;};
|
| +makeB = function(){return new B;};
|
| +
|
| +self.nativeConstructor(B);
|
| """;
|
|
|
| main() {
|
| + nativeTesting();
|
| setup();
|
| var a = makeA();
|
| Expect.isTrue(a == a);
|
| @@ -23,4 +38,13 @@ main() {
|
|
|
| Expect.isFalse(a == makeA());
|
| Expect.isFalse(identical(a, makeA()));
|
| +
|
| + var b = makeB();
|
| + Expect.isTrue(b == b);
|
| + Expect.isTrue(identical(b, b));
|
| +
|
| + Expect.isTrue(b == makeB());
|
| + Expect.isFalse(identical(b, makeB()));
|
| +
|
| + Expect.equals(2, calls);
|
| }
|
|
|