Files
sdk/tests/language/super_first_constructor_test.dart
T

33 lines
819 B
Dart

// Copyright (c) 2012, 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.
import "package:expect/expect.dart";
// Test that the constructor body of a superclass is invoked.
class Super {
final superArgument;
var superField;
Super() : this.named(''); // Redirection is required to trigger the bug.
Super.named(this.superArgument) {
superField = 'fisk';
}
}
class Sub extends Super {
var subField;
// Test for a bug when super() is the first initializer.
Sub.first() : super(), subField = [];
Sub.last() : subField = [], super();
}
main() {
Expect.equals('fisk', new Sub.last().superField);
Expect.equals('fisk', new Sub.first().superField);
}