Index: frog/tests/frog_native/native_class_is_check3_frog_test.dart |
=================================================================== |
--- frog/tests/frog_native/native_class_is_check3_frog_test.dart (revision 8644) |
+++ frog/tests/frog_native/native_class_is_check3_frog_test.dart (working copy) |
@@ -1,77 +0,0 @@ |
-// 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. |
- |
-// Test for correct simple is-checks on hidden native classes. |
- |
-interface J { |
-} |
- |
-interface I extends J { |
- I read(); |
- write(I x); |
-} |
- |
-// Native implementation. |
- |
-class A implements I native "*A" { |
- // The native class accepts only other native instances. |
- A read() native; |
- write(A x) native; |
-} |
- |
-class B extends A native "*B" { |
-} |
- |
-makeA() native; |
-makeB() native; |
- |
-void setup() native """ |
-// This code is all inside 'setup' and so not accesible from the global scope. |
-function inherits(child, parent) { |
- if (child.prototype.__proto__) { |
- child.prototype.__proto__ = parent.prototype; |
- } else { |
- function tmp() {}; |
- tmp.prototype = parent.prototype; |
- child.prototype = new tmp(); |
- child.prototype.constructor = child; |
- } |
-} |
-function A(){} |
-function B(){} |
-inherits(B, A); |
-A.prototype.read = function() { return this._x; }; |
-A.prototype.write = function(x) { this._x = x; }; |
-makeA = function(){return new A}; |
-makeB = function(){return new B}; |
-"""; |
- |
-class C {} |
- |
-main() { |
- setup(); |
- |
- var a1 = makeA(); |
- var b1 = makeB(); |
- var ob = new Object(); |
- |
- Expect.isFalse(ob is J); |
- Expect.isFalse(ob is I); |
- Expect.isFalse(ob is A); |
- Expect.isFalse(ob is B); |
- Expect.isFalse(ob is C); |
- |
- // Use b1 first to prevent a1 is checks patching the A prototype. |
- Expect.isTrue(b1 is J); |
- Expect.isTrue(b1 is I); |
- Expect.isTrue(b1 is A); |
- Expect.isTrue(b1 is B); |
- Expect.isTrue(b1 is !C); |
- |
- Expect.isTrue(a1 is J); |
- Expect.isTrue(a1 is I); |
- Expect.isTrue(a1 is A); |
- Expect.isTrue(a1 is !B); |
- Expect.isTrue(a1 is !C); |
-} |