| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 closures have a useful string that identifies the function by name | 5 // Test that closures have a useful string that identifies the function by name |
| 6 // in error messages. | 6 // in error messages. |
| 7 | 7 |
| 8 import "package:expect/expect.dart"; | 8 import "package:expect/expect.dart"; |
| 9 | 9 |
| 10 @NoInline() | 10 @NoInline() |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 if (!isMinified) { | 26 if (!isMinified) { |
| 27 Expect.equals("Instance of 'CCCC'", instanceString); | 27 Expect.equals("Instance of 'CCCC'", instanceString); |
| 28 } | 28 } |
| 29 | 29 |
| 30 checkContains(String message, String tag) { | 30 checkContains(String message, String tag) { |
| 31 if (!message.contains(tag)) { | 31 if (!message.contains(tag)) { |
| 32 if (!isMinified) { | 32 if (!isMinified) { |
| 33 Expect.fail('"$message" should contain "$tag"'); | 33 Expect.fail('"$message" should contain "$tag"'); |
| 34 } | 34 } |
| 35 // When minified we will accept quoted names up to 3 characters. | 35 // When minified we will accept quoted names up to 3 characters. |
| 36 Expect.isTrue( | 36 Expect.isTrue(message.contains(new RegExp("'..?.?'")), |
| 37 message.contains(new RegExp("'..?.?'")), | |
| 38 '"$message" should contain minified name'); | 37 '"$message" should contain minified name'); |
| 39 } | 38 } |
| 40 } | 39 } |
| 41 | 40 |
| 42 // We use ArgumentError.value since it prints the value using | 41 // We use ArgumentError.value since it prints the value using |
| 43 // Error.safeToString. | 42 // Error.safeToString. |
| 44 var e1 = new ArgumentError.value(c); | 43 var e1 = new ArgumentError.value(c); |
| 45 var s1 = '$e1'; | 44 var s1 = '$e1'; |
| 46 Expect.isTrue(s1.contains(instanceString), | 45 Expect.isTrue(s1.contains(instanceString), |
| 47 'Error message "$s1" should contain "$instanceString"'); | 46 'Error message "$s1" should contain "$instanceString"'); |
| (...skipping 26 matching lines...) Expand all Loading... |
| 74 checkContains(s5, "main_closure"); | 73 checkContains(s5, "main_closure"); |
| 75 checkContains('$anon', "main_closure"); | 74 checkContains('$anon', "main_closure"); |
| 76 | 75 |
| 77 // Local named closure. | 76 // Local named closure. |
| 78 localFunction() => c; | 77 localFunction() => c; |
| 79 var e6 = new ArgumentError.value(localFunction); | 78 var e6 = new ArgumentError.value(localFunction); |
| 80 var s6 = '$e6'; | 79 var s6 = '$e6'; |
| 81 checkContains(s6, "localFunction"); | 80 checkContains(s6, "localFunction"); |
| 82 checkContains('$localFunction', "localFunction"); | 81 checkContains('$localFunction', "localFunction"); |
| 83 } | 82 } |
| OLD | NEW |