|  | // Copyright (c) 2013, 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. | 
|  |  | 
|  | library test.invoke_test; | 
|  |  | 
|  | import 'dart:mirrors'; | 
|  |  | 
|  | import 'package:expect/expect.dart'; | 
|  | import "package:async_helper/async_helper.dart"; | 
|  |  | 
|  | import 'invoke_private_test.dart' show C; | 
|  |  | 
|  | main() { | 
|  | var result; | 
|  |  | 
|  | C c = new C(); | 
|  | InstanceMirror im = reflect(c); | 
|  | Expect.throwsNoSuchMethodError(() => im.invoke(#_method, [2, 4, 8])); | 
|  | Expect.throwsNoSuchMethodError(() => im.getField(#_getter)); | 
|  | Expect.throwsNoSuchMethodError(() => im.getField(#_field)); | 
|  | Expect.throwsNoSuchMethodError(() => im.setField(#_setter, 'foo')); | 
|  | Expect.throwsNoSuchMethodError(() => im.setField(#_field, 'bar')); | 
|  |  | 
|  | ClassMirror cm = reflectClass(C); | 
|  | Expect.throwsNoSuchMethodError(() => cm.invoke(#_staticFunction, [3, 4])); | 
|  | Expect.throwsNoSuchMethodError(() => cm.getField(#_staticGetter)); | 
|  | Expect.throwsNoSuchMethodError(() => cm.getField(#_staticField)); | 
|  | Expect.throwsNoSuchMethodError(() => cm.setField(#_staticSetter, 'sfoo')); | 
|  | Expect.throwsNoSuchMethodError(() => cm.setField(#_staticField, 'sbar')); | 
|  | Expect.throwsNoSuchMethodError(() => cm.newInstance(#_named, ['my value'])); | 
|  |  | 
|  | LibraryMirror lm = cm.owner as LibraryMirror; | 
|  | Expect.throwsNoSuchMethodError( | 
|  | () => lm.invoke(#_libraryFunction, [':', ')'])); | 
|  | Expect.throwsNoSuchMethodError(() => lm.getField(#_libraryGetter)); | 
|  | Expect.throwsNoSuchMethodError(() => lm.getField(#_libraryField)); | 
|  | Expect.throwsNoSuchMethodError(() => lm.setField(#_librarySetter, 'lfoo')); | 
|  | Expect.throwsNoSuchMethodError(() => lm.setField(#_libraryField, 'lbar')); | 
|  | } |