[flutter_tool] Fix bug in manifest yaml validation (#38472)
diff --git a/packages/flutter_tools/test/general.shard/flutter_manifest_test.dart b/packages/flutter_tools/test/general.shard/flutter_manifest_test.dart
index 79b1664..706c0f8 100644
--- a/packages/flutter_tools/test/general.shard/flutter_manifest_test.dart
+++ b/packages/flutter_tools/test/general.shard/flutter_manifest_test.dart
@@ -519,6 +519,25 @@
expect(logger.errorText, contains('Expected "fonts" to either be null or a list.'));
});
+ testUsingContext('Returns proper error when font is a map instead of a list', () async {
+ final BufferLogger logger = context.get<Logger>();
+ const String manifest = '''
+name: test
+dependencies:
+ flutter:
+ sdk: flutter
+flutter:
+ fonts:
+ family: foo
+ fonts:
+ -asset: a/bar
+''';
+ final FlutterManifest flutterManifest = FlutterManifest.createFromString(manifest);
+
+ expect(flutterManifest, null);
+ expect(logger.errorText, contains('Expected "fonts" to be a list'));
+ });
+
testUsingContext('Returns proper error when second font family is invalid', () async {
final BufferLogger logger = context.get<Logger>();
const String manifest = '''