@@ -11,7 +11,6 @@ library dartdoc.model_special_cases_test;
11
11
import 'dart:io' ;
12
12
13
13
import 'package:async/async.dart' ;
14
- import 'package:dartdoc/src/element_type.dart' ;
15
14
import 'package:dartdoc/src/model/model.dart' ;
16
15
import 'package:dartdoc/src/package_config_provider.dart' ;
17
16
import 'package:dartdoc/src/package_meta.dart' ;
@@ -74,8 +73,6 @@ void main() {
74
73
// ExperimentalFeature.experimentalReleaseVersion as these are set to null
75
74
// even when partial analyzer implementations are available, and are often
76
75
// set too high after release.
77
- final _generalizedTypedefsAllowed =
78
- VersionRange (min: Version .parse ('2.13.0-0' ), includeMin: true );
79
76
final _genericMetadataAllowed =
80
77
VersionRange (min: Version .parse ('2.14.0-0' ), includeMin: true );
81
78
final _tripleShiftAllowed =
@@ -189,78 +186,6 @@ void main() {
189
186
everyElement (contains (ab0)));
190
187
});
191
188
}, 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)));
264
189
});
265
190
266
191
group ('HTML Injection when allowed' , () {
0 commit comments