Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(87)

Side by Side Diff: tests/language/src/InterfaceFactoryTest.dart

Issue 9664004: Annotates some more tests for static type warnings (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 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 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 that the two major variations of interface factories work. 5 // Test that the two major variations of interface factories work.
6 6
7 // Variant 1. The factory class implements the interface and provides 7 // Variant 1. The factory class implements the interface and provides
8 // a default implementation of the interface. 8 // a default implementation of the interface.
9 9
10 interface Interface1 default DefaultImplementation { 10 interface Interface1 default DefaultImplementation {
11 Interface1(var secret); 11 // first parameter type 'var' not a subtype of 'int' in default implementation
12 Interface1(var secret); /// static type warning
12 Interface1.named(); 13 Interface1.named();
13 14
14 GetSecret(); 15 GetSecret();
15 } 16 }
16 17
17 class DefaultImplementation implements Interface1 { 18 class DefaultImplementation implements Interface1 {
18 int _secret; 19 int _secret;
19 20
20 DefaultImplementation(int this._secret) {} 21 DefaultImplementation(int this._secret) {}
21 DefaultImplementation.named() : this._secret = 11 {} 22 DefaultImplementation.named() : this._secret = 11 {}
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 static testMain() { 60 static testMain() {
60 Expect.equals("cobracobra", new Interface2("cobra").GetSecret()); 61 Expect.equals("cobracobra", new Interface2("cobra").GetSecret());
61 Expect.equals("NamedConstructor", new Interface2.named().GetSecret()); 62 Expect.equals("NamedConstructor", new Interface2.named().GetSecret());
62 } 63 }
63 } 64 }
64 65
65 main() { 66 main() {
66 DefaultImplementation.testMain(); 67 DefaultImplementation.testMain();
67 FactoryProvider.testMain(); 68 FactoryProvider.testMain();
68 } 69 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698