OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 // Dart test program for testing factories. | 4 // Dart test program for testing factories. |
5 | 5 |
6 import "package:expect/expect.dart"; | |
7 | |
8 class A { | 6 class A { |
9 factory A(n) { | 7 factory A(n) { |
10 return new A.internal(n); | 8 return new A.internal(n); |
11 } | 9 } |
12 A.internal(n) : n_ = n {} | 10 A.internal(n) : n_ = n {} |
13 var n_; | 11 var n_; |
14 } | 12 } |
15 | 13 |
16 class B { | 14 class B { |
17 factory B.my() { | 15 factory B.my() { |
18 return new B(3); | 16 return new B(3); |
19 } | 17 } |
20 B(n) : n_ = n {} | 18 B(n) : n_ = n {} |
21 var n_; | 19 var n_; |
22 } | 20 } |
23 | 21 |
24 class FactoryTest { | 22 class FactoryTest { |
25 static testMain() { | 23 static testMain() { |
26 new B.my(); | 24 new B.my(); |
27 var b = new B.my(); | 25 var b = new B.my(); |
28 Expect.equals(3, b.n_); | 26 Expect.equals(3, b.n_); |
29 var a = new A(5); | 27 var a = new A(5); |
30 Expect.equals(5, a.n_); | 28 Expect.equals(5, a.n_); |
31 } | 29 } |
32 } | 30 } |
33 | 31 |
34 main() { | 32 main() { |
35 FactoryTest.testMain(); | 33 FactoryTest.testMain(); |
36 } | 34 } |
OLD | NEW |