Chromium Code Reviews| Index: tests/lib/args/args_test.dart |
| =================================================================== |
| --- tests/lib/args/args_test.dart (revision 10395) |
| +++ tests/lib/args/args_test.dart (working copy) |
| @@ -357,6 +357,36 @@ |
| parser.addOption('mode', allowed: ['debug', 'release']); |
| throwsFormat(parser, ['--mode=profile']); |
| }); |
| + |
| + test('return last set value', () { |
|
Bob Nystrom
2012/08/09 23:08:40
"return" -> "returns"
"set" -> "provided"
gram
2012/08/09 23:47:00
Done.
|
| + var parser = new ArgParser(); |
| + parser.addOption('define'); |
| + var args = parser.parse(['--define=1', '--define=2']); |
| + expect(args['define'], equals('2')); |
| + }); |
| + |
| + test('return List if multi-valued', () { |
|
Bob Nystrom
2012/08/09 23:08:40
"return List" -> "returns a List"
gram
2012/08/09 23:47:00
Done.
|
| + var parser = new ArgParser(); |
| + parser.addOption('define', multiValued:true); |
|
Bob Nystrom
2012/08/09 23:08:40
Space after ":" here and elsewhere.
gram
2012/08/09 23:47:00
Done.
|
| + var args = parser.parse(['--define=1']); |
| + expect(args['define'], hasLength(1)); |
|
Bob Nystrom
2012/08/09 23:08:40
Can you just do this:
expect(args['define'], equa
gram
2012/08/09 23:47:00
Done.
|
| + args = parser.parse(['--define=1', '--define=2']); |
| + expect(args['define'], hasLength(2)); |
| + expect(args['define'][0], equals('1')); |
| + expect(args['define'][1], equals('2')); |
|
Bob Nystrom
2012/08/09 23:08:40
Ditto here. equals() handles lists, right?
gram
2012/08/09 23:47:00
Done.
|
| + }); |
| + |
| + test('default values for multi-valued arguments', () { |
|
Bob Nystrom
2012/08/09 23:08:40
This should be worded like a predicate. Maybe "ret
|
| + var parser = new ArgParser(); |
| + parser.addOption('define', defaultsTo:'0', multiValued:true); |
| + var args = parser.parse(['']); |
| + expect(args['define'], hasLength(1)); |
| + expect(args['define'][0], equals('0')); |
| + args = parser.parse(['--define=1', '--define=2']); |
| + expect(args['define'], hasLength(2)); |
| + expect(args['define'][0], equals('1')); |
| + expect(args['define'][1], equals('2')); |
| + }); |
| }); |
| group('remaining args', () { |
| @@ -557,7 +587,7 @@ |
| } |
| throwsIllegalArg(function) { |
| - expect(function, throwsA(new isInstanceOf<IllegalArgumentException>())); |
| + expect(function, throwsIllegalArgumentException); |
|
Bob Nystrom
2012/08/09 23:08:40
+1!
|
| } |
| throwsFormat(ArgParser parser, List<String> args) { |