blob: 30df07a890a47c0b57b567a7615e5bf36178847c [file] [log] [blame]
#!/usr/bin/env dart
library hop_runner;
import 'dart:async';
import 'dart:io';
import 'package:hop/hop.dart';
import 'package:hop/hop_tasks.dart';
import 'package:hop_unittest/hop_unittest.dart';
import 'package:path/path.dart' as path;
import '../test/benchmark_harness_test.dart' as benchmark_harness_test;
import '../test/result_emitter_test.dart' as result_emitter_test;
void main(List<String> args) {
addTask('analyze_libs', createAnalyzerTask(_getDartFiles('lib')));
addTask('analyze_examples', createAnalyzerTask(_getDartFiles('example')));
addTask('analyze_tests', createAnalyzerTask(_getDartFiles('test')));
addChainedTask('analyze_all',
['analyze_libs', 'analyze_examples', 'analyze_tests']);
addTask('test', createUnitTestTask((){
benchmark_harness_test.main();
result_emitter_test.main();
}));
runHop(args);
}
Future<List<String>> _getDartFiles(String directory) =>
new Directory(directory)
.list()
.where((FileSystemEntity fse) => fse is File)
.map((File file) => file.path)
.where((String filePath) => path.extension(filePath) == '.dart')
.toList();