From b10f25c603c6f0563408b42856fe598983bcbb59 Mon Sep 17 00:00:00 2001 From: Daniel Austin <58129064+Danau5tin@users.noreply.github.com> Date: Wed, 1 Mar 2023 02:08:52 +0100 Subject: [PATCH] implement override of toString() in order to print useful message in release mode as well as debug mode (#118263) Added `_ErrorDescription.toString()` --- packages/flutter/lib/src/foundation/assertions.dart | 7 +++++++ packages/flutter/test/foundation/assertions_test.dart | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/packages/flutter/lib/src/foundation/assertions.dart b/packages/flutter/lib/src/foundation/assertions.dart index 59abde71d27..188d981ae8e 100644 --- a/packages/flutter/lib/src/foundation/assertions.dart +++ b/packages/flutter/lib/src/foundation/assertions.dart @@ -223,6 +223,13 @@ abstract class _ErrorDiagnostic extends DiagnosticsProperty> { level: level, ); + @override + String toString({ + TextTreeConfiguration? parentConfiguration, + DiagnosticLevel minLevel = DiagnosticLevel.info, + }) { + return valueToString(parentConfiguration: parentConfiguration); + } @override List get value => super.value!; diff --git a/packages/flutter/test/foundation/assertions_test.dart b/packages/flutter/test/foundation/assertions_test.dart index 3f238828c09..f093b1aec29 100644 --- a/packages/flutter/test/foundation/assertions_test.dart +++ b/packages/flutter/test/foundation/assertions_test.dart @@ -16,6 +16,13 @@ void main() { expect(log[1], contains('debugPrintStack')); }); + test('should show message of ErrorDescription', () { + const String descriptionMessage = 'This is the message'; + final ErrorDescription errorDescription = ErrorDescription(descriptionMessage); + + expect(errorDescription.toString(), descriptionMessage); + }); + test('debugPrintStack', () { final List log = captureOutput(() { final FlutterErrorDetails details = FlutterErrorDetails(