@@ -14,10 +14,14 @@ import 'package:dartdoc/src/io_utils.dart';
14
14
import 'package:dartdoc/src/logging.dart' ;
15
15
import 'package:dartdoc/src/warnings.dart' ;
16
16
import 'package:path/path.dart' as path;
17
+ import 'package:pub_semver/pub_semver.dart' ;
17
18
import 'package:test/test.dart' ;
18
19
19
20
import '../src/utils.dart' ;
20
21
22
+ final _experimentPackageAllowed =
23
+ VersionRange (min: Version .parse ('2.14.0-0' ), includeMin: true );
24
+
21
25
final _resourceProvider = pubPackageMetaProvider.resourceProvider;
22
26
final _pathContext = _resourceProvider.pathContext;
23
27
@@ -33,8 +37,10 @@ final Folder _testPackageIncludeExclude =
33
37
final Folder _testPackageImportExportError =
34
38
_getFolder ('testing/test_package_import_export_error' );
35
39
final Folder _testPackageOptions = _getFolder ('testing/test_package_options' );
36
- final _testPackageCustomTemplates =
40
+ final Folder _testPackageCustomTemplates =
37
41
_getFolder ('testing/test_package_custom_templates' );
42
+ final Folder _testPackageExperiments =
43
+ _getFolder ('testing/test_package_experiments' );
38
44
39
45
/// Convenience factory to build a [DartdocGeneratorOptionContext] and associate
40
46
/// it with a [DartdocOptionSet] based on the current working directory and/or
@@ -364,6 +370,13 @@ void main() {
364
370
await dartdoc.generateDocsBase ();
365
371
});
366
372
373
+ test ('generating markdown docs for experimental features does not crash' ,
374
+ () async {
375
+ var dartdoc = await buildDartdoc (
376
+ ['--format' , 'md' ], _testPackageExperiments, tempDir);
377
+ await dartdoc.generateDocsBase ();
378
+ }, skip: ! _experimentPackageAllowed.allows (platformVersion));
379
+
367
380
test ('rel canonical prefix does not include base href' , () async {
368
381
final prefix = 'foo.bar/baz' ;
369
382
var dartdoc = await buildDartdoc (
0 commit comments