| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 // These tests are for an experimental feature that treats Dart primitive types | 5 // These tests are for an experimental feature that treats Dart primitive types |
| 6 // (int, bool, double, etc.) as non-nullable. This file is not evidence for an | 6 // (int, bool, double, etc.) as non-nullable. This file is not evidence for an |
| 7 // intention to officially support non-nullable primitives in Dart (or general | 7 // intention to officially support non-nullable primitives in Dart (or general |
| 8 // NNBD, for that matter) so don't get too crazy about it. | 8 // NNBD, for that matter) so don't get too crazy about it. |
| 9 | 9 |
| 10 library analyzer.test.src.task.non_null_primitives.checker_test; | 10 library analyzer.test.src.task.non_null_primitives.checker_test; |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 } | 104 } |
| 105 } | 105 } |
| 106 '''); | 106 '''); |
| 107 } | 107 } |
| 108 | 108 |
| 109 void test_compoundAssignment() { | 109 void test_compoundAssignment() { |
| 110 addFile(''' | 110 addFile(''' |
| 111 void main() { | 111 void main() { |
| 112 int i = 1; | 112 int i = 1; |
| 113 i += 2; | 113 i += 2; |
| 114 /*error:STATIC_TYPE_ERROR*/i += null; | 114 /*error:INVALID_ASSIGNMENT*/i += null; |
| 115 print(i); | 115 print(i); |
| 116 } | 116 } |
| 117 '''); | 117 '''); |
| 118 check(nonnullableTypes: <String>['dart:core,int']); | 118 check(nonnullableTypes: <String>['dart:core,int']); |
| 119 } | 119 } |
| 120 | 120 |
| 121 void test_forEach() { | 121 void test_forEach() { |
| 122 addFile(''' | 122 addFile(''' |
| 123 void main() { | 123 void main() { |
| 124 var ints = <num>[1, 2, 3, null]; | 124 var ints = <num>[1, 2, 3, null]; |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 legs.insert("goat", 4); | 306 legs.insert("goat", 4); |
| 307 legs.insert("chicken", 2); | 307 legs.insert("chicken", 2); |
| 308 | 308 |
| 309 int x = legs.get("goat"); // This should not produce an error. | 309 int x = legs.get("goat"); // This should not produce an error. |
| 310 int y = legs.get("sheep"); // TODO(stanm): Runtime error here. | 310 int y = legs.get("sheep"); // TODO(stanm): Runtime error here. |
| 311 } | 311 } |
| 312 '''); | 312 '''); |
| 313 check(nonnullableTypes: <String>['dart:core,int']); | 313 check(nonnullableTypes: <String>['dart:core,int']); |
| 314 } | 314 } |
| 315 } | 315 } |
| OLD | NEW |