Skip to content

Commit 6b2ee57

Browse files
authored
Use 'named' extension in tests (dart-lang#3790)
1 parent fabc394 commit 6b2ee57

File tree

2 files changed

+747
-896
lines changed

2 files changed

+747
-896
lines changed

test/end2end/model_special_cases_test.dart

Lines changed: 40 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -67,21 +67,20 @@ void main() {
6767
setUpAll(() async {
6868
constructorTearoffs = (await _testPackageGraphGinormous)
6969
.libraries
70-
.firstWhere((l) => l.name == 'constructor_tearoffs');
71-
A = constructorTearoffs.classes.firstWhere((c) => c.name == 'A');
72-
B = constructorTearoffs.classes.firstWhere((c) => c.name == 'B');
73-
C = constructorTearoffs.classes.firstWhere((c) => c.name == 'C');
74-
D = constructorTearoffs.classes.firstWhere((c) => c.name == 'D');
75-
E = constructorTearoffs.classes.firstWhere((c) => c.name == 'E');
76-
F = constructorTearoffs.classes.firstWhere((c) => c.name == 'F');
77-
M = constructorTearoffs.mixins.firstWhere((m) => m.name == 'M');
78-
At = constructorTearoffs.typedefs.firstWhere((t) => t.name == 'At');
79-
Bt = constructorTearoffs.typedefs.firstWhere((t) => t.name == 'Bt');
80-
Ct = constructorTearoffs.typedefs.firstWhere((t) => t.name == 'Ct');
81-
Et = constructorTearoffs.typedefs.firstWhere((t) => t.name == 'Et');
82-
Ft = constructorTearoffs.typedefs.firstWhere((t) => t.name == 'Ft');
83-
NotAClass =
84-
constructorTearoffs.typedefs.firstWhere((t) => t.name == 'NotAClass');
70+
.named('constructor_tearoffs');
71+
A = constructorTearoffs.classes.named('A');
72+
B = constructorTearoffs.classes.named('B');
73+
C = constructorTearoffs.classes.named('C');
74+
D = constructorTearoffs.classes.named('D');
75+
E = constructorTearoffs.classes.named('E');
76+
F = constructorTearoffs.classes.named('F');
77+
M = constructorTearoffs.mixins.named('M');
78+
At = constructorTearoffs.typedefs.named('At');
79+
Bt = constructorTearoffs.typedefs.named('Bt');
80+
Ct = constructorTearoffs.typedefs.named('Ct');
81+
Et = constructorTearoffs.typedefs.named('Et');
82+
Ft = constructorTearoffs.typedefs.named('Ft');
83+
NotAClass = constructorTearoffs.typedefs.named('NotAClass');
8584
Anew = A.constructors.firstWhere((c) => c.isUnnamedConstructor);
8685
Bnew = B.constructors.firstWhere((c) => c.isUnnamedConstructor);
8786
Cnew = C.constructors.firstWhere((c) => c.isUnnamedConstructor);
@@ -201,14 +200,11 @@ void main() {
201200
additionalArguments: ['--sanitize-html'],
202201
);
203202

204-
exLibrary = packageGraph.libraries.firstWhere((lib) => lib.name == 'ex');
203+
exLibrary = packageGraph.libraries.named('ex');
205204

206-
classWithHtml =
207-
exLibrary.classes.firstWhere((c) => c.name == 'SanitizableHtml');
208-
blockHtml = classWithHtml.instanceMethods
209-
.firstWhere((m) => m.name == 'blockHtml');
210-
inlineHtml = classWithHtml.instanceMethods
211-
.firstWhere((m) => m.name == 'inlineHtml');
205+
classWithHtml = exLibrary.classes.named('SanitizableHtml');
206+
blockHtml = classWithHtml.instanceMethods.named('blockHtml');
207+
inlineHtml = classWithHtml.instanceMethods.named('inlineHtml');
212208
for (var modelElement in packageGraph.allLocalModelElements) {
213209
modelElement.documentation;
214210
}
@@ -267,15 +263,13 @@ void main() {
267263
excludeLibraries: ['css', 'code_in_comments', 'excluded'],
268264
additionalArguments: ['--inject-html']);
269265

270-
injectionExLibrary =
271-
injectionPackageGraph.libraries.firstWhere((lib) => lib.name == 'ex');
266+
injectionExLibrary = injectionPackageGraph.libraries.named('ex');
272267

273-
htmlInjection = injectionExLibrary.classes
274-
.firstWhere((c) => c.name == 'HtmlInjection');
275-
injectSimpleHtml = htmlInjection.instanceMethods
276-
.firstWhere((m) => m.name == 'injectSimpleHtml');
277-
injectHtmlFromTool = htmlInjection.instanceMethods
278-
.firstWhere((m) => m.name == 'injectHtmlFromTool');
268+
htmlInjection = injectionExLibrary.classes.named('HtmlInjection');
269+
injectSimpleHtml =
270+
htmlInjection.instanceMethods.named('injectSimpleHtml');
271+
injectHtmlFromTool =
272+
htmlInjection.instanceMethods.named('injectHtmlFromTool');
279273
for (var modelElement in injectionPackageGraph.allLocalModelElements) {
280274
modelElement.documentation;
281275
}
@@ -306,14 +300,12 @@ void main() {
306300
isNot(contains('{@end-inject-html}')));
307301
});
308302
test('tool outputs a macro which outputs injected HTML', () {
309-
var ToolPrintingMacroWhichInjectsHtml = injectionExLibrary.classes
310-
.firstWhere((c) => c.name == 'ToolPrintingMacroWhichInjectsHtml');
311-
var a = ToolPrintingMacroWhichInjectsHtml.instanceFields
312-
.firstWhere((m) => m.name == 'a');
303+
var ToolPrintingMacroWhichInjectsHtml =
304+
injectionExLibrary.classes.named('ToolPrintingMacroWhichInjectsHtml');
305+
var a = ToolPrintingMacroWhichInjectsHtml.instanceFields.named('a');
313306
expect(a.documentationAsHtml,
314307
contains('<p>Text.</p>\n<p><div class="title">Title</div></p>'));
315-
var b = ToolPrintingMacroWhichInjectsHtml.instanceFields
316-
.firstWhere((m) => m.name == 'b');
308+
var b = ToolPrintingMacroWhichInjectsHtml.instanceFields.named('b');
317309
expect(b.documentationAsHtml,
318310
contains('<p>Text.</p>\n<p><div class="title">Title</div></p>'));
319311
});
@@ -360,13 +352,13 @@ void main() {
360352
'Verify auto-included dependencies do not use default package category definitions',
361353
() {
362354
var IAmAClassWithCategories = ginormousPackageGraph.localPackages
363-
.firstWhere((Package p) => p.name == 'test_package_imported')
355+
.firstWhere((p) => p.name == 'test_package_imported')
364356
.libraries
365357
.wherePublic
366-
.firstWhere((Library l) => l.name == 'categoriesExported')
358+
.named('categoriesExported')
367359
.classes
368360
.wherePublic
369-
.firstWhere((Class c) => c.name == 'IAmAClassWithCategories');
361+
.named('IAmAClassWithCategories');
370362
expect(IAmAClassWithCategories.hasCategoryNames, isTrue);
371363
expect(IAmAClassWithCategories.categories, hasLength(1));
372364
expect(
@@ -378,13 +370,13 @@ void main() {
378370
// they are exposed in.
379371
test('Verify that reexported classes pick up categories', () {
380372
var IAmAClassWithCategoriesReexport = ginormousPackageGraph.localPackages
381-
.firstWhere((Package p) => p.name == 'test_package')
373+
.firstWhere((p) => p.name == 'test_package')
382374
.libraries
383375
.wherePublic
384-
.firstWhere((Library l) => l.name == 'fake')
376+
.named('fake')
385377
.classes
386378
.wherePublic
387-
.firstWhere((Class c) => c.name == 'IAmAClassWithCategories');
379+
.named('IAmAClassWithCategories');
388380
expect(IAmAClassWithCategoriesReexport.hasCategoryNames, isTrue);
389381
expect(IAmAClassWithCategoriesReexport.categories, hasLength(1));
390382
expect(IAmAClassWithCategoriesReexport.categories.first.name,
@@ -397,14 +389,14 @@ void main() {
397389

398390
test('Verify that multiple categories work correctly', () {
399391
var fakeLibrary = ginormousPackageGraph.localPackages
400-
.firstWhere((Package p) => p.name == 'test_package')
392+
.firstWhere((p) => p.name == 'test_package')
401393
.libraries
402394
.wherePublic
403-
.firstWhere((Library l) => l.name == 'fake');
404-
var BaseForDocComments = fakeLibrary.classes.wherePublic
405-
.firstWhere((Class c) => c.name == 'BaseForDocComments');
406-
var SubForDocComments = fakeLibrary.classes.wherePublic
407-
.firstWhere((Class c) => c.name == 'SubForDocComments');
395+
.named('fake');
396+
var BaseForDocComments =
397+
fakeLibrary.classes.wherePublic.named('BaseForDocComments');
398+
var SubForDocComments =
399+
fakeLibrary.classes.wherePublic.named('SubForDocComments');
408400
expect(BaseForDocComments.hasCategoryNames, isTrue);
409401
// Display both, with the correct order and display name.
410402
expect(BaseForDocComments.displayedCategories, hasLength(2));

0 commit comments

Comments
 (0)