Commit graph

3910 commits

Author SHA1 Message Date
mark_story
e85482f702 Making a missing method generate help, when a shell lacks a main() method. 2010-10-16 01:24:23 -04:00
mark_story
a234eeb0b0 Updating test cases for project task to not need to turn on verbose output. 2010-10-16 01:05:09 -04:00
mark_story
4627cc01cf Updating SchemaShell to use optionparser and removing old help.
Updating test case to use new param names.
2010-10-16 00:43:03 -04:00
mark_story
6ec4e07504 Updating testsuite test case. 2010-10-16 00:42:37 -04:00
mark_story
ced7243f95 Making ConsoleOptionParser not default options to true. Having them this way made it pretty difficult to write simple conditions in shells, as options would always be truthy. 2010-10-16 00:39:22 -04:00
mark_story
46dcf8b036 Fixing formatting on generated help in ConsoleOptionParser.
Updating tests.
Making Shell::wrapText a simple wrapper for String::wrap()
2010-10-15 23:09:28 -04:00
mark_story
98a654c4b9 Expanding String::wrap to be able to indent and start indenting at a specific offset. 2010-10-15 22:46:03 -04:00
mark_story
5f90ac2b45 Adding width wrapping to the generated help. Should help with having content that is too long. 2010-10-14 23:21:56 -04:00
mark_story
7f70c8a95d Removing a test that doesn't need to be implemented. 2010-10-14 23:21:14 -04:00
mark_story
0492a188ed Adding Shell::wrapText() to extend String methods, with indenting which can be useful in shell output. 2010-10-14 22:58:23 -04:00
mark_story
7b5ae6a5c4 Adding String::wrap() to handle wrapping strings for console output. 2010-10-14 22:32:56 -04:00
mark_story
b8467164f8 Making ConsoleOutput work correctly when multiple identical tags are used. 2010-10-14 22:16:42 -04:00
mark_story
4be57a2ea5 Adding output levels to Shell
Adding tests for output levels.
2010-10-13 23:40:45 -04:00
mark_story
037bc6cb2f Changing how arguments are shown in help output. 2010-10-13 23:18:28 -04:00
mark_story
3e1554f5bb Adding incomplete tests so I remember what to do next. 2010-10-13 23:18:28 -04:00
mark_story
03688bc2ff Adding an option parser to controller task.
Converting the public and admin positional arguments into switches.
Updating the task and test cases to reflect the switches changes.
2010-10-13 23:18:27 -04:00
mark_story
52c1c71e4a Updating fixture task to use the OptionParser
Fixing failing tests caused by changing tasks to lazy loading.
2010-10-13 23:18:27 -04:00
mark_story
10090696a0 Making boolean switches behave.
Boolean switches always show up in the parsed options.  When left undefined they insert a false, and when included they insert a true.  This makes working with them require less checks.
2010-10-13 23:18:26 -04:00
mark_story
b328276289 Adding default values into the parsed output.
This makes it so options with default values are always part of the parsed options regardless of whether or not they were included.  This will allow shells to include less logic checking for existence of parameters.
2010-10-13 23:18:26 -04:00
mark_story
2af684cbec Fixing issue where exceptions for missing required arguments would be raised when trying to get help. 2010-10-13 23:18:26 -04:00
mark_story
43646b9372 Updating AclShell to use new formatting and removing methods that are no longer needed. 2010-10-13 23:18:26 -04:00
mark_story
0fd8d2b8e4 Adding addSubcommands, and support for subcommands to buildFromArray.
This makes the API consistent across all the elements of ConsoleOptionParser.
2010-10-13 23:18:26 -04:00
mark_story
99407e788f Fixing issue where choices would not be correctly validated. 2010-10-13 23:18:26 -04:00
mark_story
8c990a9e08 Fixing failing tests caused by API changes. 2010-10-13 23:18:26 -04:00
mark_story
970a6c8d79 Adding the ability for parse() to use a subcommand parser.
Adding text on how to get help on subcommands.
2010-10-13 23:18:25 -04:00
mark_story
b5630a5e30 Making description() and epilog() accept arrays. 2010-10-13 23:18:25 -04:00
mark_story
412864c510 Porting AclShell help to use the OptionParser. 2010-10-13 23:18:25 -04:00
mark_story
7a31eb41e9 Adding ability to define a subcommand parser as an array.
This makes defining subcommands a bit easier as you don't have to build a pile of objects first.
2010-10-13 23:18:25 -04:00
mark_story
ef027f6d0e Adding choices to usage and generated help text. 2010-10-13 23:18:25 -04:00
mark_story
4e91012144 Adding validation for positional arguments.
You can use choices option to give a list of valid values that an argument can have.
2010-10-13 23:18:24 -04:00
mark_story
56292b658c Adding option value validation to ConsoleOptionParser. 2010-10-13 23:18:24 -04:00
mark_story
27a4f3c0d7 Adding test to make sure tags that are unknown are not removed. 2010-10-13 23:18:24 -04:00
mark_story
ad367fed9a Adding addOptions and addArguments as convience methods for adding multiple options/arguments. 2010-10-13 23:18:24 -04:00
mark_story
72e1a96a9a Renaming a Shell::_getOptionParser -> getOptionParser
Made the method public so subparser help would be easy to wire up. Moving help generation above task invocation so it always displays.
2010-10-13 23:18:23 -04:00
mark_story
ab794b300e Adding support for help generating help for subcommands.
Adding tests for subcommand help generation.
2010-10-13 23:18:23 -04:00
mark_story
56339e05f3 Adding subcommand to help output.
Subcommands can be shell methods or tasks.  Both should support additional parsers.  Which is not complete yet.
2010-10-13 23:18:23 -04:00
mark_story
f1ee46749b Fixing failing tests in Schema shell. 2010-10-13 23:18:23 -04:00
mark_story
193721a0eb Fixing notice errors in ShellDispatcher
Removing ShellDispatcher tests that are now inside Shell.
Changing exception type to match the one used in ShellDispatcher.
2010-10-13 23:18:23 -04:00
mark_story
e70089891d Adding some more array_unshift. These fix issues where tasks would receive their name in the argv which is not correct. 2010-10-13 23:18:22 -04:00
mark_story
79d1739778 Adding tests for task methods in runCommand.
Moving startup() call to the dispatcher so nested runCommand calls don't double output the startup content.
2010-10-13 23:18:22 -04:00
mark_story
cea9dadaa2 Fixing ShellDispatcher::parseParams tests to reflect the changes in what they do.
Adding tests for Shell::runCommand().
2010-10-13 23:18:22 -04:00
mark_story
cd18c8214c Adding Shell::hasMethod and tests for it. 2010-10-13 23:18:22 -04:00
mark_story
18c5a62445 Removing a dead test and adding tests for hasTask 2010-10-13 23:18:22 -04:00
mark_story
fbcc9c1fc1 Making Tasks lazy load.
This allows task initialization to be moved out of ShellDispatcher where it does not belong, as tasks are similar to components.  Updating parts of TaskCollection, as the Dispatcher is still required to be passed around.
2010-10-13 23:18:22 -04:00
mark_story
7f5b5c4fbd Adding exception for unknown option usage. 2010-10-13 23:18:21 -04:00
mark_story
d3c95bc2c4 Adding epilog and description to the generate help. 2010-10-13 23:18:21 -04:00
mark_story
501e63e45d Adding argument help generation in the long help and usage string.
Fixing output of option help, formatting was calculated in 2 places.
2010-10-13 23:18:21 -04:00
mark_story
09adc38b6c Doing some fixes as the longest option + a short would cause incorrect formatting. 2010-10-13 23:18:21 -04:00
mark_story
0eb68226ce Adding ConsoleOptionParser to the AllShells test. 2010-10-13 23:18:21 -04:00
mark_story
cea6cef727 Adding smart defaults for verbose, quiet, and help options.
Adding help formatting for options.
2010-10-13 23:18:21 -04:00