• Andrew Kolos's avatar
    give `throwsToolExit` a more useful description (#136694) · 1328997b
    Andrew Kolos authored
    Fixes https://github.com/flutter/flutter/issues/136698.
    
    Alters how `throwToolExit` creates its matcher. This results is an improved description of the matcher.
    
    The mismatch description isn't improved by this, but I writing an entirely custom matcher to fix this isn't ideal either. We can instead mitigate the issue by augmenting the `toString` implementation of `ToolExit` to include the exit code, if it is non-null.
    
    With these changes, the first few lines of output from a test would look like this:
    
    ```
    Expected: throws <Instance of 'ToolExit'> with `exitCode`: <42> and `message`: contains 'message'
      Actual: <Closure: () => Never>
       Which: threw ToolExit:<Exit code: 41232. Error: message>
    ```
    1328997b
Name
Last commit
Last update
..
android_common.dart Loading commit data...
common.dart Loading commit data...
context.dart Loading commit data...
custom_devices_common.dart Loading commit data...
fake_devices.dart Loading commit data...
fake_http_client.dart Loading commit data...
fake_process_manager.dart Loading commit data...
fake_vm_services.dart Loading commit data...
fakes.dart Loading commit data...
io.dart Loading commit data...
logging_logger.dart Loading commit data...
pubspec_schema.dart Loading commit data...
test_build_system.dart Loading commit data...
test_flutter_command_runner.dart Loading commit data...
test_wrapper.dart Loading commit data...
testbed.dart Loading commit data...
throwing_pub.dart Loading commit data...