nategood/commando — pull request #31 by enygma (2014-05-01 13:43:45+00:00)
Title: Add requires

Adding the concept of "required options". Adds dependency between options such that:

$cmd = new Command();
$cmd->option('test')
->requires('other');

So that if "--test" is defined, "--other" must be also otherwise an exception is thrown. Options can also have multiple dependencies:

$cmd = new Command();
$cmd->option('test')
->requires(array('other','option'));

Where both "--other" and "--option" must be defined.
Unit tests are included.