File tree Expand file tree Collapse file tree 2 files changed +21
-0
lines changed
Expand file tree Collapse file tree 2 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -44,6 +44,7 @@ RouteConfiguration buildRouteConfiguration(Directory directory) {
4444 onRogueRoute: rogueRoutes.add,
4545 );
4646 final publicDirectory = Directory (path.join (directory.path, 'public' ));
47+ final mainDartFile = File (path.join (directory.path, 'main.dart' ));
4748 return RouteConfiguration (
4849 globalMiddleware: globalMiddleware,
4950 middleware: middleware,
@@ -52,6 +53,7 @@ RouteConfiguration buildRouteConfiguration(Directory directory) {
5253 rogueRoutes: rogueRoutes,
5354 endpoints: endpoints,
5455 serveStaticFiles: publicDirectory.existsSync (),
56+ invokeCustomEntrypoint: mainDartFile.existsSync (),
5557 );
5658}
5759
@@ -285,8 +287,12 @@ class RouteConfiguration {
285287 required this .endpoints,
286288 required this .rogueRoutes,
287289 this .serveStaticFiles = false ,
290+ this .invokeCustomEntrypoint = false ,
288291 });
289292
293+ /// Whether to invoke a custom entrypoint script (`main.dart` ).
294+ final bool invokeCustomEntrypoint;
295+
290296 /// Whether to serve static files. Defaults to false.
291297 final bool serveStaticFiles;
292298
Original file line number Diff line number Diff line change @@ -40,6 +40,21 @@ void main() {
4040 expect (configuration.serveStaticFiles, isFalse);
4141 });
4242
43+ test ('invokeCustomEntrypoint is true when main.dart exists' , () {
44+ final directory = Directory .systemTemp.createTempSync ();
45+ Directory (path.join (directory.path, 'routes' )).createSync ();
46+ File (path.join (directory.path, 'main.dart' )).createSync ();
47+ final configuration = buildRouteConfiguration (directory);
48+ expect (configuration.invokeCustomEntrypoint, isTrue);
49+ });
50+
51+ test ('invokeCustomEntrypoint is false when main.dart does not exist' , () {
52+ final directory = Directory .systemTemp.createTempSync ();
53+ Directory (path.join (directory.path, 'routes' )).createSync ();
54+ final configuration = buildRouteConfiguration (directory);
55+ expect (configuration.invokeCustomEntrypoint, isFalse);
56+ });
57+
4358 test ('includes global middleware when it exists' , () {
4459 final directory = Directory .systemTemp.createTempSync ();
4560 final routes = Directory (path.join (directory.path, 'routes' ))
You can’t perform that action at this time.
0 commit comments