OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 // Test for unresolved super[]. | 5 // Test for unresolved super[]. |
6 | 6 |
7 import "package:expect/expect.dart"; | |
8 | |
9 class A { | 7 class A { |
10 var indexField = new List(2); | 8 var indexField = new List(2); |
11 operator[]=(index, value) { indexField[index] = value; } | 9 operator[]=(index, value) { indexField[index] = value; } |
12 | 10 |
13 noSuchMethod(InvocationMirror im) { | 11 noSuchMethod(InvocationMirror im) { |
14 if (im.memberName == '[]') { | 12 if (im.memberName == '[]') { |
15 Expect.equals(1, im.positionalArguments.length); | 13 Expect.equals(1, im.positionalArguments.length); |
16 return indexField[im.positionalArguments[0]]; | 14 return indexField[im.positionalArguments[0]]; |
17 } else { | 15 } else { |
18 Expect.fail('Should not reach here'); | 16 Expect.fail('Should not reach here'); |
(...skipping 15 matching lines...) Expand all Loading... |
34 Expect.equals(3, super[0] += 1); | 32 Expect.equals(3, super[0] += 1); |
35 Expect.equals(3, super[0]); | 33 Expect.equals(3, super[0]); |
36 Expect.equals(3, super[0]++); | 34 Expect.equals(3, super[0]++); |
37 Expect.equals(4, super[0]); | 35 Expect.equals(4, super[0]); |
38 } | 36 } |
39 } | 37 } |
40 | 38 |
41 main() { | 39 main() { |
42 new B().test(); | 40 new B().test(); |
43 } | 41 } |
OLD | NEW |