1..20 # __construct() ok 1 - __construct() creates a new sfCommandOptionSet object ok 2 - __construct() takes an array of sfCommandOption objects as its first argument # ->setOptions() ok 3 - ->setOptions() sets the array of sfCommandOption objects ok 4 - ->setOptions() clears all sfCommandOption objects ok 5 - ->setOptions() clears all sfCommandOption objects # ->addOptions() ok 6 - ->addOptions() adds an array of sfCommandOption objects ok 7 - ->addOptions() does not clear existing sfCommandOption objects # ->addOption() ok 8 - ->addOption() adds a sfCommandOption object ok 9 - ->addOption() adds a sfCommandOption object ok 10 - ->addOption() throws a sfCommandException if the another option is already registered with the same name ok 11 - ->addOption() throws a sfCommandException if the another option is already registered with the same shortcut # ->getOption() ok 12 - ->getOption() returns a sfCommandOption by its name ok 13 - ->getOption() throws an exception if the option name does not exist # ->hasOption() ok 14 - ->hasOption() returns true if a sfCommandOption exists for the given name ok 15 - ->hasOption() returns false if a sfCommandOption exists for the given name # ->hasShortcut() ok 16 - ->hasShortcut() returns true if a sfCommandOption exists for the given shortcut ok 17 - ->hasShortcut() returns false if a sfCommandOption exists for the given shortcut # ->getOptionForShortcut() ok 18 - ->getOptionForShortcut() returns a sfCommandOption by its shortcut ok 19 - ->getOption() throws an exception if the shortcut does not exist # ->getDefaults() ok 20 - ->getDefaults() returns the default values for all options # Looks like everything went fine.