| 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 | 4 |
| 5 #library("status_file_parser"); | 5 #library("status_file_parser"); |
| 6 | 6 |
| 7 | 7 |
| 8 #import("status_expression.dart"); | 8 #import("status_expression.dart"); |
| 9 | 9 |
| 10 // Possible outcomes of running a test. | 10 // Possible outcomes of running a test. |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 173 * part is removed from the last filename component. Then the last | 173 * part is removed from the last filename component. Then the last |
| 174 * component is split into more components at '_'s. | 174 * component is split into more components at '_'s. |
| 175 * | 175 * |
| 176 * Examples of complext filename component splits: | 176 * Examples of complext filename component splits: |
| 177 * | 177 * |
| 178 * a/b/c/d_e_f/d_e_f_A01_t01 -> ['a', 'b', 'c', 'd_e_f', 'A01', 't01'] | 178 * a/b/c/d_e_f/d_e_f_A01_t01 -> ['a', 'b', 'c', 'd_e_f', 'A01', 't01'] |
| 179 * a/b/c/d_e_f_A01_t01 -> ['a', 'b', 'c', 'd', 'e', 'f', 'A01', 't01'] | 179 * a/b/c/d_e_f_A01_t01 -> ['a', 'b', 'c', 'd', 'e', 'f', 'A01', 't01'] |
| 180 */ | 180 */ |
| 181 Set<String> expectations(String filename) { | 181 Set<String> expectations(String filename) { |
| 182 var result = new Set(); | 182 var result = new Set(); |
| 183 var splitFilename = filename.split(new Platform().pathSeparator()); | 183 var splitFilename = filename.split('/'); |
| 184 | 184 |
| 185 // If complex matching is required split the last filename | 185 // If complex matching is required split the last filename |
| 186 // component at '_'. Additionally, remove the prefix of the last | 186 // component at '_'. Additionally, remove the prefix of the last |
| 187 // component if it is identical to the second-to-last component. | 187 // component if it is identical to the second-to-last component. |
| 188 if (_complexMatching && splitFilename.length >= 2) { | 188 if (_complexMatching && splitFilename.length >= 2) { |
| 189 var last = splitFilename.removeLast(); | 189 var last = splitFilename.removeLast(); |
| 190 var secondToLast = splitFilename.last(); | 190 var secondToLast = splitFilename.last(); |
| 191 if (last.startsWith(secondToLast)) { | 191 if (last.startsWith(secondToLast)) { |
| 192 last = last.substring(secondToLast.length); | 192 last = last.substring(secondToLast.length); |
| 193 } | 193 } |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 243 } | 243 } |
| 244 regExps[i] = regExp; | 244 regExps[i] = regExp; |
| 245 } | 245 } |
| 246 _keyToRegExps[key] = regExps; | 246 _keyToRegExps[key] = regExps; |
| 247 }); | 247 }); |
| 248 | 248 |
| 249 _regExpCache = null; | 249 _regExpCache = null; |
| 250 _preprocessed = true; | 250 _preprocessed = true; |
| 251 } | 251 } |
| 252 } | 252 } |
| OLD | NEW |