void printDetailed( Consumer<String> output ) { for ( Arguments arguments : command.possibleArguments() ) { String left = format( "usage: %s %s", scriptName, command.name() ); output.accept( Arguments.rightColumnFormatted( left, arguments.usage(), left.length() + 1 ) ); } output.accept( "" ); Usage.printEnvironmentVariables( output ); output.accept( command.allArguments().description( command.description() ) ); } }
private static AdminCommand.Provider mockCommand( String name, String summary, AdminCommandSection section ) { AdminCommand.Provider commandProvider = mock( AdminCommand.Provider.class ); when( commandProvider.name() ).thenReturn( name ); when( commandProvider.summary() ).thenReturn( summary ); when( commandProvider.allArguments() ).thenReturn( Arguments.NO_ARGS ); when( commandProvider.possibleArguments() ).thenReturn( Collections.singletonList( Arguments.NO_ARGS ) ); when( commandProvider.description() ).thenReturn( "description" ); when( commandProvider.commandSection() ).thenReturn( section ); return commandProvider; } }
Arguments arguments = new Arguments().withDatabase(); when( commandProvider.allArguments() ).thenReturn( arguments ); when( commandProvider.possibleArguments() ).thenReturn( Collections.singletonList( arguments ) ); when( commandProvider.description() ).thenReturn( "This is a description of the foobar command." ); when( commandLocator.findProvider( "foobar" ) ).thenReturn( commandProvider );