Skip to content

Commit d3027d5

Browse files
mkustermannCommit Queue
authored andcommitted
[gardening] Make new test work also in obfuscation modified
The new `lib/isolate/handle_throwing_to_string_error_test` was relying on symbol names not being obfuscated and fails on `vm-aot-obfuscate-linux-release-x64`. => Make it more robust by using `Symbol`s instead of `Strings`. Change-Id: Ib1cd793b100b1c0b31f0a909f4ec8db442590540 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/413660 Reviewed-by: Daco Harkes <[email protected]> Commit-Queue: Martin Kustermann <[email protected]>
1 parent 7f43b34 commit d3027d5

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

tests/lib/isolate/handle_throwing_to_string_error_test.dart

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,17 @@ void main() async {
3232
Isolate.spawn((_) => isolateMain(), null, onError: errorPort.sendPort);
3333
var errorAndStack = await errorPort.first as List<Object?>;
3434
Expect.listEquals([
35-
"Instance of 'ThrowingToStringError'",
36-
"Instance of 'ThrowingToStringStackTrace'",
35+
"Instance of '${(#ThrowingToStringError).name}'",
36+
"Instance of '${(#ThrowingToStringStackTrace).name}'",
3737
], errorAndStack);
3838
asyncEnd();
3939
}
40+
41+
final symbolToStringPattern = RegExp(r'^Symbol[(]"(?<name>.+)"[)]$');
42+
43+
extension on Symbol {
44+
String get name {
45+
final match = symbolToStringPattern.firstMatch(toString())!;
46+
return match.namedGroup('name')!;
47+
}
48+
}

0 commit comments

Comments
 (0)