blob: 38129e8b1d7c55f9866f9f8b599053d85d3f2f4e [file] [log] [blame]
kasperl@google.com371b9e22012-02-15 13:05:24 +00001// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
floitsch@google.com8fd6d0a2013-04-05 19:43:16 +00005import "package:expect/expect.dart";
6
kasperl@google.com371b9e22012-02-15 13:05:24 +00007class A {
8 int foo;
9 A(this.foo);
10
11 raw$foo() => foo;
12 this$foo() => this.foo;
13}
14
15class B extends A {
16 int foo;
17 B.b1(x, this.foo) : super(x);
18 B.b2(x, y) : this.foo = y, super(x);
19 B.b3(x, y) : super(x), this.foo = y;
20
21 super$foo() => super.foo;
22 sum() => foo + super.foo;
23}
24
25test(b) {
26 Expect.equals(10, b.foo);
27 Expect.equals(10, b.raw$foo());
28 Expect.equals(10, b.this$foo());
29 Expect.equals(100, b.super$foo());
30 Expect.equals(110, b.sum());
31}
32
33main() {
34 test(new B.b1(100, 10));
35 test(new B.b2(100, 10));
36 test(new B.b3(100, 10));
37}