081e2acf29
Bug: https://github.com/dart-lang/sdk/issues/40045 Change-Id: Ic0f62843d61b613e61f434b72b9553dd1e6897af Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/132441 Reviewed-by: Ben Konyi <bkonyi@google.com> Commit-Queue: Ryan Macnak <rmacnak@google.com>
29 lines
846 B
Dart
29 lines
846 B
Dart
// 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.superclass;
|
|
|
|
import 'dart:mirrors';
|
|
import 'package:expect/expect.dart';
|
|
|
|
checkSuperclassChain(ClassMirror? cm) {
|
|
ClassMirror? last;
|
|
do {
|
|
last = cm;
|
|
cm = cm!.superclass;
|
|
} while (cm != null);
|
|
Expect.equals(reflectClass(Object), last);
|
|
}
|
|
|
|
main() {
|
|
checkSuperclassChain(reflect(null).type);
|
|
checkSuperclassChain(reflect([]).type);
|
|
checkSuperclassChain(reflect(<int>[]).type);
|
|
checkSuperclassChain(reflect(0).type);
|
|
checkSuperclassChain(reflect(1.5).type);
|
|
checkSuperclassChain(reflect("str").type);
|
|
checkSuperclassChain(reflect(true).type);
|
|
checkSuperclassChain(reflect(false).type);
|
|
}
|