public void testOptionIntListType() throws IntrospectionException { class A { @Option(names = "o") List<Integer> o; } CommandDescriptor<A, ?> c = CommandFactory.DEFAULT.create(A.class); OptionDescriptor i = c.getOption("-o"); assertEquals(Multiplicity.MULTI, i.getMultiplicity()); assertEquals(ValueType.INTEGER, i.getType()); }
public void testOptionEnumType() throws IntrospectionException { class A { @Option(names = "o") RetentionPolicy o; } CommandDescriptor<A, ?> c = CommandFactory.DEFAULT.create(A.class); OptionDescriptor i = c.getOption("-o"); assertEquals(Multiplicity.SINGLE, i.getMultiplicity()); assertEquals(false, i.isRequired()); assertEquals(ValueType.ENUM, i.getType()); }
public void testOptionIntWrapperType() throws IntrospectionException { class A { @Option(names = "o") Integer o; } CommandDescriptor<A, ?> c = CommandFactory.DEFAULT.create(A.class); OptionDescriptor i = c.getOption("-o"); assertEquals(Multiplicity.SINGLE, i.getMultiplicity()); assertEquals(false, i.isRequired()); assertEquals(ValueType.INTEGER, i.getType()); }
@Override public void runCommand(CommandDescriptor commandDescriptor, Runnable postExecution) { String[] commands = commandDescriptor.getFrameworkCommand().getCommands(); String[] commandParams = commandDescriptor.getCommandParams(); List<String> params = new ArrayList<String>(commands.length + commandParams.length); params.addAll(Arrays.asList(commands)); params.addAll(Arrays.asList(commandParams)); try { YiiScript.forPhpModule(phpModule, false).runCommand(phpModule, params, postExecution); } catch (InvalidPhpExecutableException ex) { UiUtils.invalidScriptProvided(ex.getLocalizedMessage(), YiiScript.OPTIONS_SUB_PATH); } }