blob: 081af92f4f183dbbbb6e27a02a6e0a8d9db3d9af [file] [log] [blame]
// Copyright (c) 2017, 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";
var calls = <String>[];
abstract class A {
bool _done = true;
var a = calls.add('A()') as dynamic;
}
abstract class B {
B.protected() {
calls.add('B.protected()');
}
}
class C extends B with A {
C() : super.protected() {
calls.add('C()');
}
}
void main() {
var c = new C();
Expect.isTrue(c._done);
Expect.equals(calls.join(', '), 'A(), B.protected(), C()');
}