blob: f87ee52896f490cd86222e2d7aede3d9cd43095c [file] [log] [blame]
// 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.
// Test to make sure that the names of classes that are marked with mirrors-used
// are preserved.
// In the test the class B is not instantiated, but we still want its names (the
// "foo") to be preserved.
@MirrorsUsed(targets: "B")
import 'dart:mirrors';
import 'package:expect/expect.dart';
class A {
noSuchMethod(invocationMirror) {
return MirrorSystem.getName(invocationMirror.memberName);
}
}
class B {
foo() => 499;
}
void main() {
var a = new A();
if (new DateTime.now().year == 1984) {
a = A;
}
Expect.equals("foo", a.foo());
}