| OLD | NEW | 
|   1 // Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file |   1 // Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file | 
|   2 // for details. All rights reserved. Use of this source code is governed by a |   2 // for details. All rights reserved. Use of this source code is governed by a | 
|   3 // BSD-style license that can be found in the LICENSE file. |   3 // BSD-style license that can be found in the LICENSE file. | 
|   4  |   4  | 
 |   5 import "dart:_js_helper"; | 
|   5 import "package:expect/expect.dart"; |   6 import "package:expect/expect.dart"; | 
|   6  |   7  | 
|   7 // Test for correct simple is-checks on hidden native classes. |   8 // Test for correct simple is-checks on hidden native classes. | 
|   8  |   9  | 
|   9 abstract class J { |  10 abstract class J { | 
|  10 } |  11 } | 
|  11  |  12  | 
|  12 abstract class I extends J { |  13 abstract class I extends J { | 
|  13   I read(); |  14   I read(); | 
|  14   write(I x); |  15   write(I x); | 
|  15 } |  16 } | 
|  16  |  17  | 
|  17 // Native implementation. |  18 // Native implementation. | 
|  18  |  19  | 
|  19 class A implements I native "A" { |  20 @Native("A") | 
 |  21 class A implements I { | 
|  20   // The native class accepts only other native instances. |  22   // The native class accepts only other native instances. | 
|  21   A read() native; |  23   A read() native; | 
|  22   write(A x) native; |  24   write(A x) native; | 
|  23 } |  25 } | 
|  24  |  26  | 
|  25 class B extends A native "B" { |  27 @Native("B") | 
 |  28 class B extends A { | 
|  26 } |  29 } | 
|  27  |  30  | 
|  28 makeA() native; |  31 makeA() native; | 
|  29 makeB() native; |  32 makeB() native; | 
|  30  |  33  | 
|  31 void setup() native """ |  34 void setup() native """ | 
|  32 // This code is all inside 'setup' and so not accesible from the global scope. |  35 // This code is all inside 'setup' and so not accesible from the global scope. | 
|  33 function inherits(child, parent) { |  36 function inherits(child, parent) { | 
|  34   if (child.prototype.__proto__) { |  37   if (child.prototype.__proto__) { | 
|  35     child.prototype.__proto__ = parent.prototype; |  38     child.prototype.__proto__ = parent.prototype; | 
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  70   Expect.isTrue(b1 is A); |  73   Expect.isTrue(b1 is A); | 
|  71   Expect.isTrue(b1 is B); |  74   Expect.isTrue(b1 is B); | 
|  72   Expect.isTrue(b1 is !C); |  75   Expect.isTrue(b1 is !C); | 
|  73  |  76  | 
|  74   Expect.isTrue(a1 is J); |  77   Expect.isTrue(a1 is J); | 
|  75   Expect.isTrue(a1 is I); |  78   Expect.isTrue(a1 is I); | 
|  76   Expect.isTrue(a1 is A); |  79   Expect.isTrue(a1 is A); | 
|  77   Expect.isTrue(a1 is !B); |  80   Expect.isTrue(a1 is !B); | 
|  78   Expect.isTrue(a1 is !C); |  81   Expect.isTrue(a1 is !C); | 
|  79 } |  82 } | 
| OLD | NEW |