| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 #import("compiler_helper.dart"); | |
| 6 | |
| 7 final String TEST_ONE = @""" | |
| 8 foo(String a) { | |
| 9 // index into the parameter and move into a loop to make sure we'll get a | |
| 10 // type guard. | |
| 11 for (int i = 0; i < 1; i++) { | |
| 12 print(a[0]); | |
| 13 } | |
| 14 return a.length; | |
| 15 } | |
| 16 """; | |
| 17 | |
| 18 final String TEST_TWO = @""" | |
| 19 foo() { | |
| 20 return "foo".length; | |
| 21 } | |
| 22 """; | |
| 23 | |
| 24 final String TEST_THREE = @""" | |
| 25 foo() { | |
| 26 return @"foo".length; | |
| 27 } | |
| 28 """; | |
| 29 | |
| 30 final String TEST_FOUR = @""" | |
| 31 foo() { | |
| 32 return new List().add(2); | |
| 33 } | |
| 34 """; | |
| 35 | |
| 36 main() { | |
| 37 String generated = compile(TEST_ONE, 'foo'); | |
| 38 Expect.isTrue(generated.contains("return a.length;")); | |
| 39 | |
| 40 generated = compile(TEST_TWO, 'foo'); | |
| 41 Expect.isTrue(generated.contains("return 3;")); | |
| 42 | |
| 43 generated = compile(TEST_THREE, 'foo'); | |
| 44 Expect.isTrue(generated.contains("return 3;")); | |
| 45 | |
| 46 generated = compile(TEST_FOUR, 'foo'); | |
| 47 Expect.isTrue(generated.contains("push(2);")); | |
| 48 } | |
| OLD | NEW |