@@ -11,7 +11,6 @@ library dartdoc.model_special_cases_test;
1111import 'dart:io' ;
1212
1313import 'package:async/async.dart' ;
14- import 'package:dartdoc/src/element_type.dart' ;
1514import 'package:dartdoc/src/model/model.dart' ;
1615import 'package:dartdoc/src/package_config_provider.dart' ;
1716import 'package:dartdoc/src/package_meta.dart' ;
@@ -74,8 +73,6 @@ void main() {
7473 // ExperimentalFeature.experimentalReleaseVersion as these are set to null
7574 // even when partial analyzer implementations are available, and are often
7675 // set too high after release.
77- final _generalizedTypedefsAllowed =
78- VersionRange (min: Version .parse ('2.13.0-0' ), includeMin: true );
7976 final _genericMetadataAllowed =
8077 VersionRange (min: Version .parse ('2.14.0-0' ), includeMin: true );
8178 final _tripleShiftAllowed =
@@ -189,78 +186,6 @@ void main() {
189186 everyElement (contains (ab0)));
190187 });
191188 }, skip: ! _genericMetadataAllowed.allows (_platformVersion));
192-
193- group ('generalized typedefs' , () {
194- Library generalizedTypedefs;
195- Typedef T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ;
196- Class C , C2 ;
197-
198- setUpAll (() async {
199- generalizedTypedefs = (await _testPackageGraphExperiments)
200- .libraries
201- .firstWhere ((l) => l.name == 'generalized_typedefs' );
202- T0 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T0' );
203- T1 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T1' );
204- T2 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T2' );
205- T3 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T3' );
206- T4 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T4' );
207- T5 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T5' );
208- T6 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T6' );
209- T7 = generalizedTypedefs.typedefs.firstWhere ((a) => a.name == 'T7' );
210- C = generalizedTypedefs.classes.firstWhere ((c) => c.name == 'C' );
211- C2 = generalizedTypedefs.classes.firstWhere ((c) => c.name == 'C2' );
212- });
213-
214- void expectTypedefs (Typedef t, String modelTypeToString,
215- Iterable <String > genericParameters) {
216- expect (t.modelType.toString (), equals (modelTypeToString));
217- expect (t.genericTypeParameters.map ((p) => p.toString ()),
218- orderedEquals (genericParameters));
219- }
220-
221- void expectAliasedTypeName (AliasedElementType n, expected) {
222- expect (n.aliasElement.name, expected);
223- }
224-
225- test ('typedef references display aliases' , () {
226- var g = C .instanceMethods.firstWhere ((m) => m.name == 'g' );
227-
228- var c = C2 .allFields.firstWhere ((f) => f.name == 'c' );
229- var d = C2 .instanceMethods.firstWhere ((f) => f.name == 'd' );
230-
231- expectAliasedTypeName (c.modelType, equals ('T1' ));
232- expectAliasedTypeName (d.modelType.returnType, equals ('T2' ));
233- expectAliasedTypeName (d.parameters.first.modelType, equals ('T3' ));
234- expectAliasedTypeName (d.parameters.last.modelType, equals ('T4' ));
235-
236- expectAliasedTypeName (g.modelType.returnType, equals ('T1' ));
237- expectAliasedTypeName (
238- g.modelType.parameters.first.modelType, equals ('T2' ));
239- expectAliasedTypeName (
240- g.modelType.parameters.last.modelType, equals ('T3' ));
241- });
242-
243- test ('typedef references to special types work' , () {
244- var a = generalizedTypedefs.properties.firstWhere ((p) => p.name == 'a' );
245- var b = C2 .allFields.firstWhere ((f) => f.name == 'b' );
246- var f = C .allFields.firstWhere ((f) => f.name == 'f' );
247- expectAliasedTypeName (a.modelType, equals ('T0' ));
248- expectAliasedTypeName (b.modelType, equals ('T0' ));
249- expectAliasedTypeName (f.modelType, equals ('T0' ));
250- }, skip: 'dart-lang/sdk#45291' );
251-
252- test ('basic non-function typedefs work' , () {
253- expectTypedefs (T0 , 'void' , []);
254- expectTypedefs (T1 , 'Function' , []);
255- expectTypedefs (T2 , 'List<X>' , ['out X' ]);
256- expectTypedefs (T3 , 'Map<X, Y>' , ['out X' , 'out Y' ]);
257- expectTypedefs (T4 , 'void Function()' , []);
258- expectTypedefs (T5 , 'X Function(X, {X name})' , ['inout X' ]);
259- expectTypedefs (T6 , 'X Function(Y, [Map<Y, Y>])' , ['out X' , 'in Y' ]);
260- expectTypedefs (T7 , 'X Function(Y, [Map<Y, Y>])' ,
261- ['out X extends String' , 'in Y extends List<X>' ]);
262- });
263- }, skip: (! _generalizedTypedefsAllowed.allows (_platformVersion)));
264189 });
265190
266191 group ('HTML Injection when allowed' , () {
0 commit comments