Skip to content

Commit e60066c

Browse files
authored
feat: removing external dependencies checking from dev brick (#927)
1 parent b00ec98 commit e60066c

File tree

2 files changed

+98
-149
lines changed

2 files changed

+98
-149
lines changed

bricks/dart_frog_dev_server/hooks/pre_gen.dart

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,9 @@ Future<void> run(HookContext context) async => preGen(context);
1717

1818
Future<void> preGen(
1919
HookContext context, {
20-
io.Directory? directory,
2120
RouteConfigurationBuilder buildConfiguration = buildRouteConfiguration,
2221
void Function(int exitCode) exit = _defaultExit,
2322
}) async {
24-
final projectDirectory = directory ?? io.Directory.current;
25-
2623
final RouteConfiguration configuration;
2724
try {
2825
configuration = buildConfiguration(io.Directory.current);
@@ -57,18 +54,6 @@ Future<void> preGen(
5754
);
5855
},
5956
);
60-
await reportExternalPathDependencies(
61-
projectDirectory,
62-
onViolationStart: () {
63-
context.logger
64-
..info('')
65-
..err('All path dependencies must be within the project.')
66-
..err('External path dependencies detected:');
67-
},
68-
onExternalPathDependency: (dependencyName, dependencyPath) {
69-
context.logger.err(' \u{2022} $dependencyName from $dependencyPath');
70-
},
71-
);
7257

7358
context.vars = {
7459
'port': context.vars['port'] ?? '8080',

bricks/dart_frog_dev_server/hooks/test/pre_gen_test.dart

Lines changed: 98 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
1-
import 'dart:io';
2-
31
import 'package:dart_frog_gen/dart_frog_gen.dart';
42
import 'package:mason/mason.dart';
53
import 'package:mocktail/mocktail.dart';
6-
import 'package:path/path.dart' as path;
74
import 'package:test/test.dart';
85

96
import '../pre_gen.dart';
@@ -90,8 +87,8 @@ void main() {
9087
route: '/',
9188
params: [],
9289
wildcard: false,
93-
)
94-
]
90+
),
91+
],
9592
},
9693
);
9794

@@ -142,53 +139,6 @@ void main() {
142139
expect(exitCalls, isEmpty);
143140
});
144141

145-
test('complains about r external dependencies', () async {
146-
const configuration = RouteConfiguration(
147-
middleware: [],
148-
directories: [],
149-
routes: [],
150-
rogueRoutes: [],
151-
endpoints: {},
152-
);
153-
154-
final directory = Directory.systemTemp.createTempSync();
155-
File(path.join(directory.path, 'pubspec.yaml')).writeAsStringSync(
156-
'''
157-
name: example
158-
version: 0.1.0
159-
environment:
160-
sdk: ^2.17.0
161-
dependencies:
162-
mason: any
163-
foo:
164-
path: ../../foo
165-
dev_dependencies:
166-
test: any
167-
''',
168-
);
169-
170-
final exitCalls = <int>[];
171-
await preGen(
172-
context,
173-
buildConfiguration: (_) => configuration,
174-
exit: exitCalls.add,
175-
directory: directory,
176-
);
177-
178-
verify(
179-
() => logger.err('All path dependencies must be within the project.'),
180-
).called(1);
181-
verify(
182-
() => logger.err('External path dependencies detected:'),
183-
).called(1);
184-
verify(
185-
() => logger.err(' \u{2022} foo from ../../foo'),
186-
).called(1);
187-
expect(exitCalls, isEmpty);
188-
189-
directory.delete(recursive: true).ignore();
190-
});
191-
192142
test('retains custom port if specified', () async {
193143
const customPort = '8081';
194144
context.vars['port'] = customPort;
@@ -209,16 +159,18 @@ dev_dependencies:
209159
verifyNever(() => logger.err(any()));
210160
expect(
211161
context.vars,
212-
equals({
213-
'port': customPort,
214-
'directories': <RouteDirectory>[],
215-
'routes': <RouteFile>[],
216-
'middleware': <MiddlewareFile>[],
217-
'globalMiddleware': false,
218-
'serveStaticFiles': false,
219-
'invokeCustomEntrypoint': false,
220-
'invokeCustomInit': false
221-
}),
162+
equals(
163+
{
164+
'port': customPort,
165+
'directories': <RouteDirectory>[],
166+
'routes': <RouteFile>[],
167+
'middleware': <MiddlewareFile>[],
168+
'globalMiddleware': false,
169+
'serveStaticFiles': false,
170+
'invokeCustomEntrypoint': false,
171+
'invokeCustomInit': false,
172+
},
173+
),
222174
);
223175
});
224176

@@ -243,16 +195,18 @@ dev_dependencies:
243195
verifyNever(() => logger.err(any()));
244196
expect(
245197
context.vars,
246-
equals({
247-
'port': customPort,
248-
'directories': <RouteDirectory>[],
249-
'routes': <RouteFile>[],
250-
'middleware': <MiddlewareFile>[],
251-
'globalMiddleware': false,
252-
'serveStaticFiles': false,
253-
'invokeCustomEntrypoint': true,
254-
'invokeCustomInit': false
255-
}),
198+
equals(
199+
{
200+
'port': customPort,
201+
'directories': <RouteDirectory>[],
202+
'routes': <RouteFile>[],
203+
'middleware': <MiddlewareFile>[],
204+
'globalMiddleware': false,
205+
'serveStaticFiles': false,
206+
'invokeCustomEntrypoint': true,
207+
'invokeCustomInit': false,
208+
},
209+
),
256210
);
257211
});
258212

@@ -277,16 +231,18 @@ dev_dependencies:
277231
verifyNever(() => logger.err(any()));
278232
expect(
279233
context.vars,
280-
equals({
281-
'port': customPort,
282-
'directories': <RouteDirectory>[],
283-
'routes': <RouteFile>[],
284-
'middleware': <MiddlewareFile>[],
285-
'globalMiddleware': false,
286-
'serveStaticFiles': false,
287-
'invokeCustomEntrypoint': false,
288-
'invokeCustomInit': true
289-
}),
234+
equals(
235+
{
236+
'port': customPort,
237+
'directories': <RouteDirectory>[],
238+
'routes': <RouteFile>[],
239+
'middleware': <MiddlewareFile>[],
240+
'globalMiddleware': false,
241+
'serveStaticFiles': false,
242+
'invokeCustomEntrypoint': false,
243+
'invokeCustomInit': true,
244+
},
245+
),
290246
);
291247
});
292248

@@ -301,7 +257,7 @@ dev_dependencies:
301257
MiddlewareFile(
302258
name: 'hello_middleware',
303259
path: 'hello/middleware.dart',
304-
)
260+
),
305261
],
306262
directories: [
307263
RouteDirectory(
@@ -325,7 +281,7 @@ dev_dependencies:
325281
),
326282
],
327283
params: [],
328-
)
284+
),
329285
],
330286
routes: [
331287
RouteFile(
@@ -361,7 +317,7 @@ dev_dependencies:
361317
params: [],
362318
wildcard: false,
363319
),
364-
]
320+
],
365321
},
366322
rogueRoutes: [],
367323
serveStaticFiles: true,
@@ -376,56 +332,64 @@ dev_dependencies:
376332
verifyNever(() => logger.err(any()));
377333
expect(
378334
context.vars,
379-
equals({
380-
'port': '8080',
381-
'directories': [
382-
{
383-
'name': '_',
384-
'route': '/',
385-
'middleware': <Map<String, dynamic>>[],
386-
'files': [
387-
{
388-
'name': 'index',
389-
'path': 'index.dart',
390-
'route': '/',
391-
'file_params': <String>[],
392-
'wildcard': false,
393-
},
394-
{
395-
'name': 'hello',
396-
'path': 'hello.dart',
397-
'route': '/hello',
398-
'file_params': <String>[],
399-
'wildcard': false,
400-
}
401-
],
402-
'directory_params': <String>[],
403-
}
404-
],
405-
'routes': [
406-
{
407-
'name': 'index',
408-
'path': 'index.dart',
409-
'route': '/',
410-
'file_params': const <String>[],
411-
'wildcard': false,
335+
equals(
336+
{
337+
'port': '8080',
338+
'directories': [
339+
{
340+
'name': '_',
341+
'route': '/',
342+
'middleware': <Map<String, dynamic>>[],
343+
'files': [
344+
{
345+
'name': 'index',
346+
'path': 'index.dart',
347+
'route': '/',
348+
'file_params': <String>[],
349+
'wildcard': false,
350+
},
351+
{
352+
'name': 'hello',
353+
'path': 'hello.dart',
354+
'route': '/hello',
355+
'file_params': <String>[],
356+
'wildcard': false,
357+
}
358+
],
359+
'directory_params': <String>[],
360+
}
361+
],
362+
'routes': [
363+
{
364+
'name': 'index',
365+
'path': 'index.dart',
366+
'route': '/',
367+
'file_params': const <String>[],
368+
'wildcard': false,
369+
},
370+
{
371+
'name': 'hello',
372+
'path': 'hello.dart',
373+
'route': '/hello',
374+
'file_params': const <String>[],
375+
'wildcard': false,
376+
}
377+
],
378+
'middleware': [
379+
{
380+
'name': 'hello_middleware',
381+
'path': 'hello/middleware.dart',
382+
},
383+
],
384+
'globalMiddleware': {
385+
'name': 'middleware',
386+
'path': 'middleware.dart',
412387
},
413-
{
414-
'name': 'hello',
415-
'path': 'hello.dart',
416-
'route': '/hello',
417-
'file_params': const <String>[],
418-
'wildcard': false,
419-
}
420-
],
421-
'middleware': [
422-
{'name': 'hello_middleware', 'path': 'hello/middleware.dart'}
423-
],
424-
'globalMiddleware': {'name': 'middleware', 'path': 'middleware.dart'},
425-
'serveStaticFiles': true,
426-
'invokeCustomEntrypoint': false,
427-
'invokeCustomInit': false
428-
}),
388+
'serveStaticFiles': true,
389+
'invokeCustomEntrypoint': false,
390+
'invokeCustomInit': false,
391+
},
392+
),
429393
);
430394
});
431395
});

0 commit comments

Comments
 (0)