| Index: tests/compiler/dart2js_native/native_missing_method1_frog_test.dart
 | 
| diff --git a/tests/compiler/dart2js_native/native_missing_method1_frog_test.dart b/tests/compiler/dart2js_native/native_missing_method1_frog_test.dart
 | 
| index a6c0e077f2dbc0e7922ccbf7b847ab6b81ec7007..6223080f73f0bb515f8da61fd2613d7fb85c914d 100644
 | 
| --- a/tests/compiler/dart2js_native/native_missing_method1_frog_test.dart
 | 
| +++ b/tests/compiler/dart2js_native/native_missing_method1_frog_test.dart
 | 
| @@ -2,47 +2,50 @@
 | 
|  // 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 {}
 | 
|  
 | 
| -makeA() native ;
 | 
| +A makeA() native ;
 | 
|  
 | 
|  void setup() native """
 | 
|  function A() {};
 | 
| -A.prototype.foo = function() { return  42; }
 | 
| +A.prototype.foo = function() { return  99; }
 | 
|  makeA = function() { return new A; }
 | 
| +self.nativeConstructor(A);
 | 
|  """;
 | 
|  
 | 
|  class B {
 | 
| -  // We need to define a foo method so that Frog sees it. Because it's
 | 
| -  // the only occurence of 'foo', Frog does not bother mangling the
 | 
| -  // call sites. It thinks all calls will either go to this method, or
 | 
| -  // throw a NoSuchMethodError.
 | 
| +  // We need to define a foo method so that dart2js sees it. Because the the
 | 
| +  // only occurences of 'foo' is on B, a Dart class, no interceptor is used.  It
 | 
| +  // thinks all calls will either go to this method, or throw a
 | 
| +  // NoSuchMethodError. It is possible that the native class will shadow a
 | 
| +  // method, but it will not shadow 'foo' because the name is either 'mangled'
 | 
| +  // with the arity, or minified.
 | 
|    foo() {
 | 
|      return 42;
 | 
|    }
 | 
|  }
 | 
|  
 | 
|  typedContext() {
 | 
| -  var things = [makeA(), new B()];
 | 
| -  A a = things[0];
 | 
| +  confuse(new B()).foo();
 | 
| +  A a = makeA();
 | 
|    Expect.throws(() => a.foo(), (e) => e is NoSuchMethodError);
 | 
|    Expect.throws(() => a.foo, (e) => e is NoSuchMethodError);
 | 
|    Expect.throws(() => a.foo = 4, (e) => e is NoSuchMethodError);
 | 
|  }
 | 
|  
 | 
|  untypedContext() {
 | 
| -  var things = [makeA(), new B()];
 | 
| -  var a = things[0];
 | 
| +  confuse(new B()).foo();
 | 
| +  var a = confuse(makeA());
 | 
|    Expect.throws(() => a.foo(), (e) => e is NoSuchMethodError);
 | 
|    Expect.throws(() => a.foo, (e) => e is NoSuchMethodError);
 | 
|    Expect.throws(() => a.foo = 4, (e) => e is NoSuchMethodError);
 | 
|  }
 | 
|  
 | 
|  main() {
 | 
| +  nativeTesting();
 | 
|    setup();
 | 
|    typedContext();
 | 
|    untypedContext();
 | 
| 
 |