Chromium Code Reviews| Index: tools/gardening/lib/src/util.dart |
| diff --git a/tools/gardening/lib/src/util.dart b/tools/gardening/lib/src/util.dart |
| index 278d4e3c29db43e3ba67ceb562614b2e77a1c319..a4e591c7258b901e4f6dc3e71b142a9123eeedd2 100644 |
| --- a/tools/gardening/lib/src/util.dart |
| +++ b/tools/gardening/lib/src/util.dart |
| @@ -6,6 +6,10 @@ import 'dart:async'; |
| import 'dart:convert'; |
| import 'dart:io'; |
| +import 'package:args/args.dart'; |
| + |
| +import 'cache.dart'; |
| + |
| /// Split [text] using [infixes] as infix markers. |
| List<String> split(String text, List<String> infixes) { |
| List<String> result = <String>[]; |
| @@ -27,9 +31,15 @@ String padRight(String text, int length) { |
| return text; |
| } |
| -const bool LOG = const bool.fromEnvironment('LOG', defaultValue: false); |
| +/// Pad [text] with spaces to the left to fit [length]. |
| +String padLeft(String text, int length) { |
| + if (text.length < length) return '${' ' * (length - text.length)}${text}'; |
| + return text; |
| +} |
| -void log(String text) { |
| +bool LOG = const bool.fromEnvironment('LOG', defaultValue: false); |
| + |
| +void log(Object text) { |
| if (LOG) print(text); |
| } |
| @@ -39,3 +49,25 @@ Future<String> readUriAsText(HttpClient client, Uri uri) async { |
| HttpClientResponse response = await request.close(); |
| return await response.transform(UTF8.decoder).join(); |
| } |
| + |
| +ArgParser createArgParser() { |
| + ArgParser argParser = new ArgParser(); |
| + argParser.addFlag('verbose', abbr: 'v'); |
| + argParser.addOption('cache'); |
| + return argParser; |
| +} |
| + |
| +void processArgResults(ArgResults argResults) { |
| + if (argResults['verbose']) { |
| + LOG = true; |
| + } |
| + if (argResults['cache'] != null) { |
| + cache.base = Uri.base.resolve('${argResults['cache']}/'); |
| + } |
| +} |
| + |
| +void printOptions() { |
|
Dmitry Stefantsov
2017/04/06 09:16:10
Maybe pass 'argParser' here and use 'print(argPars
Johnni Winther
2017/04/06 10:06:07
Good call! Done.
|
| + print(" --verbose, -v Turn on logging output."); |
| + print(" --cache=<dir> Use <dir> for caching test output."); |
| + print(" Defaults to 'temp/gardening-cache/'."); |
| +} |