@@ -52,7 +52,7 @@ void main() {
52
52
);
53
53
54
54
final List <ValidationMessage > messages = < ValidationMessage > [];
55
- plugins.validatePackage (messages, < String > ['Dart' ], 'Dart' , 'download-Dart' );
55
+ plugins.validatePackage (messages, < String > ['Dart' , 'dart' ], 'Dart' , 'download-Dart' );
56
56
plugins.validatePackage (
57
57
messages,
58
58
< String > ['flutter-intellij' , 'flutter-intellij.jar' ],
@@ -156,7 +156,7 @@ Manifest-Version: 1.0
156
156
final IntelliJPlugins plugins = IntelliJPlugins (_kPluginsPath, fileSystem: fileSystem);
157
157
158
158
final List <ValidationMessage > messages = < ValidationMessage > [];
159
- plugins.validatePackage (messages, < String > ['Dart' ], 'Dart' , 'download-Dart' );
159
+ plugins.validatePackage (messages, < String > ['Dart' , 'dart' ], 'Dart' , 'download-Dart' );
160
160
plugins.validatePackage (
161
161
messages,
162
162
< String > ['flutter-intellij' , 'flutter-intellij.jar' ],
@@ -188,11 +188,38 @@ Manifest-Version: 1.0
188
188
);
189
189
190
190
expect (
191
- () =>
192
- plugins.validatePackage (< ValidationMessage > [], < String > ['Dart' ], 'Dart' , 'download-Dart' ),
191
+ () => plugins.validatePackage (
192
+ < ValidationMessage > [],
193
+ < String > ['Dart' , 'dart' ],
194
+ 'Dart' ,
195
+ 'download-Dart' ,
196
+ ),
193
197
returnsNormally,
194
198
);
195
199
});
200
+
201
+ // Regression test for https://github.com/flutter/flutter/issues/163214
202
+ testWithoutContext (
203
+ 'IntelliJPlugins can find the Dart plugin with a lowercase package name' ,
204
+ () async {
205
+ final IntelliJPlugins plugins = IntelliJPlugins (_kPluginsPath, fileSystem: fileSystem);
206
+ final Archive dartJarArchive = buildSingleFileArchive ('META-INF/plugin.xml' , r'''
207
+ <idea-plugin>
208
+ <name>Dart</name>
209
+ <version>242.24931</version>
210
+ </idea-plugin>''' );
211
+ writeFileCreatingDirectories (
212
+ fileSystem.path.join (_kPluginsPath, 'dart' , 'lib' , 'dart.jar' ),
213
+ ZipEncoder ().encode (dartJarArchive)! ,
214
+ );
215
+
216
+ final List <ValidationMessage > messages = < ValidationMessage > [];
217
+ plugins.validatePackage (messages, < String > ['Dart' , 'dart' ], 'Dart' , 'download-Dart' );
218
+
219
+ expect (messages.length, equals (1 ));
220
+ expect (messages.single.message, equals ('Dart plugin version 242.24931' ));
221
+ },
222
+ );
196
223
}
197
224
198
225
const String _kPluginsPath = '/data/intellij/plugins' ;
0 commit comments