OLD | NEW |
| (Empty) |
1 // 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 // Test that parameters keep their names in the output. | |
5 | |
6 #import("compiler_helper.dart"); | |
7 #import("parser_helper.dart"); | |
8 | |
9 final String TEST_ONE = @""" | |
10 class A { } | |
11 class B { } | |
12 | |
13 main() { | |
14 new A(); | |
15 new B(); | |
16 } | |
17 """; | |
18 | |
19 final String TEST_TWO = @""" | |
20 class A { } | |
21 class B extends A { } | |
22 | |
23 main() { | |
24 new A(); | |
25 new B(); | |
26 } | |
27 """; | |
28 | |
29 final String TEST_THREE = @""" | |
30 class B extends A { } | |
31 class A { } | |
32 | |
33 main() { | |
34 new B(); | |
35 new A(); | |
36 } | |
37 """; | |
38 | |
39 final String TEST_FOUR = @""" | |
40 class A { | |
41 var x; | |
42 } | |
43 | |
44 class B extends A { | |
45 var y; | |
46 var z; | |
47 } | |
48 | |
49 main() { | |
50 new B(); | |
51 } | |
52 """; | |
53 | |
54 final String TEST_FIVE = @""" | |
55 class A { | |
56 var x; | |
57 A(x) : this.x = x {} | |
58 } | |
59 | |
60 main() { | |
61 new A(3); | |
62 } | |
63 """; | |
64 | |
65 twoClasses() { | |
66 String generated = compileAll(TEST_ONE); | |
67 Expect.isTrue(generated.contains('\$.A = {"":\n [],\n super: "Object"')); | |
68 Expect.isTrue(generated.contains('\$.B = {"":\n [],\n super: "Object"')); | |
69 } | |
70 | |
71 subClass() { | |
72 checkOutput(String generated) { | |
73 Expect.isTrue(generated.contains('\$.A = {"":\n [],\n super: "Object"')); | |
74 Expect.isTrue(generated.contains('\$.B = {"":\n [],\n super: "A"')); | |
75 } | |
76 | |
77 checkOutput(compileAll(TEST_TWO)); | |
78 checkOutput(compileAll(TEST_THREE)); | |
79 } | |
80 | |
81 fieldTest() { | |
82 String generated = compileAll(TEST_FOUR); | |
83 Expect.isTrue(generated.contains(@""" | |
84 $.B = {"": | |
85 ["z", "y", "x"], | |
86 super: "A" | |
87 }""")); | |
88 } | |
89 | |
90 constructor1() { | |
91 String generated = compileAll(TEST_FIVE); | |
92 Expect.isTrue(generated.contains(@"new $.A(x);")); | |
93 } | |
94 | |
95 main() { | |
96 twoClasses(); | |
97 subClass(); | |
98 fieldTest(); | |
99 constructor1(); | |
100 } | |
OLD | NEW |