From cdcf9f0faebee64c75816f6817b77b43a30245d4 Mon Sep 17 00:00:00 2001 From: Emmanuel Bigeon Date: Thu, 10 May 2018 11:18:10 -0400 Subject: [PATCH] Update command parameterization mechanics --- .../bigeon/gclc/ApplicationAttachement.java | 3 +- .../gclc/command/CommandParameters.java | 6 +- .../gclc/command/ParametrizedCommand.java | 120 +--------- .../gclc/command/ParametrizedCommandData.java | 210 ++++++++++++++++++ .../gclc/CommandTestingApplication.java | 3 +- .../bigeon/gclc/ConsoleTestApplication.java | 9 +- .../gclc/command/CommandParametersTest.java | 6 +- .../gclc/command/CommandProviderTest.java | 2 +- .../bigeon/gclc/command/HelpExecutorTest.java | 8 +- .../gclc/command/ParametrizedCommandTest.java | 18 +- .../gclc/command/ScriptExecutionTest.java | 7 +- .../bigeon/gclc/command/SubedCommandTest.java | 6 +- .../gclc/manager/ReadingRunnableTest.java | 4 +- .../manager/SystemConsoleManagerTest.java | 18 +- .../bigeon/gclc/prompt/CLIPrompterTest.java | 26 +-- .../tools/AOutputForwardRunnableTest.java | 1 - 16 files changed, 280 insertions(+), 167 deletions(-) create mode 100644 gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommandData.java diff --git a/gclc/src/main/java/fr/bigeon/gclc/ApplicationAttachement.java b/gclc/src/main/java/fr/bigeon/gclc/ApplicationAttachement.java index e64ccd6..e9ec38f 100644 --- a/gclc/src/main/java/fr/bigeon/gclc/ApplicationAttachement.java +++ b/gclc/src/main/java/fr/bigeon/gclc/ApplicationAttachement.java @@ -38,6 +38,7 @@ */ package fr.bigeon.gclc; +import fr.bigeon.gclc.command.ICommandProvider; import fr.bigeon.gclc.exception.InvalidCommandName; /** Represent a functionnality set that can be added to a console application. @@ -54,5 +55,5 @@ public interface ApplicationAttachement { * @param application the application * @throws InvalidCommandName if a command name is invalid for the * application. */ - void attach(ConsoleApplication application) throws InvalidCommandName; + void attach(ICommandProvider application) throws InvalidCommandName; } diff --git a/gclc/src/main/java/fr/bigeon/gclc/command/CommandParameters.java b/gclc/src/main/java/fr/bigeon/gclc/command/CommandParameters.java index 53bd545..be15f3b 100644 --- a/gclc/src/main/java/fr/bigeon/gclc/command/CommandParameters.java +++ b/gclc/src/main/java/fr/bigeon/gclc/command/CommandParameters.java @@ -137,7 +137,11 @@ public final class CommandParameters { * @return the number of element read */ private int parseArg(final String arg, final String next) { if (!arg.startsWith("-")) { //$NON-NLS-1$ - return strict ? 0 : 1; + if (strict) { + return 0; + } + additional.add(arg); + return 1; } final String name = arg.substring(1); if (booleanArguments.containsKey(name)) { diff --git a/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommand.java b/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommand.java index ffb09ee..1704877 100644 --- a/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommand.java +++ b/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommand.java @@ -39,23 +39,12 @@ package fr.bigeon.gclc.command; import java.io.IOException; -import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; import java.util.Set; -import fr.bigeon.gclc.exception.CommandParsingException; import fr.bigeon.gclc.exception.CommandRunException; -import fr.bigeon.gclc.exception.CommandRunExceptionType; import fr.bigeon.gclc.exception.InvalidParameterException; import fr.bigeon.gclc.manager.ConsoleInput; import fr.bigeon.gclc.manager.ConsoleOutput; -import fr.bigeon.gclc.manager.EmptyInput; /** A command relying on the {@link CommandParameters} to store parameters * values. @@ -63,15 +52,7 @@ import fr.bigeon.gclc.manager.EmptyInput; * @author Emmanuel BIGEON */ public abstract class ParametrizedCommand extends Command { - /** The boolean parameters mandatory status. */ - private final Set boolParams = new HashSet<>(); - /** The string parameters mandatory status. */ - private final Map stringParams = new HashMap<>(); - /** The parameters mandatory status. */ - private final Map params = new HashMap<>(); - /** The restriction of provided parameters on execution to declared - * paramters in the status maps. */ - private final boolean strict; + private final ParametrizedCommandData data; /** Create a parametrized command. *

@@ -96,7 +77,7 @@ public abstract class ParametrizedCommand extends Command { * @param strict if the arguments are restricted to the declared ones */ public ParametrizedCommand(final String name, final boolean strict) { super(name); - this.strict = strict; + data = new ParametrizedCommandData(strict); } /** Add a boolean parameter to defined parmaters. @@ -105,12 +86,7 @@ public abstract class ParametrizedCommand extends Command { * @throws InvalidParameterException if the parameter is already defined as * a string parameter */ protected final void addBooleanParameter(final String flag) throws InvalidParameterException { - if (params.containsKey(flag) && stringParams.containsKey(flag)) { - throw new InvalidParameterException( - "Parameter is already defined as string"); //$NON-NLS-1$ - } - boolParams.add(flag); - params.put(flag, Boolean.FALSE); + data.addBooleanParameter(flag); } /** Add a string parameter to defined parmaters. @@ -121,30 +97,7 @@ public abstract class ParametrizedCommand extends Command { * a boolean parameter */ protected final void addStringParameter(final String flag, final boolean needed) throws InvalidParameterException { - if (params.containsKey(flag)) { - checkParam(flag, needed); - return; - } - stringParams.put(flag, Boolean.valueOf(needed)); - params.put(flag, Boolean.valueOf(needed)); - } - - /** Check a parameter. - * - * @param param the string parameter - * @param needed if the parameter is needed - * @throws InvalidParameterException if the new definition is invalid */ - private void checkParam(final String param, - final boolean needed) throws InvalidParameterException { - if (stringParams.containsKey(param)) { - final Boolean need = Boolean - .valueOf(needed || stringParams.get(param).booleanValue()); - stringParams.put(param, need); - params.put(param, need); - return; - } - throw new InvalidParameterException( - "Parameter is already defined as boolean"); //$NON-NLS-1$ + data.addStringParameter(flag, needed); } /** Actually performs the execution after parsing the parameters. @@ -162,59 +115,10 @@ public abstract class ParametrizedCommand extends Command { public final void execute(final ConsoleOutput output, final ConsoleInput input, final String... args) throws CommandRunException { - final CommandParameters parameters = new CommandParameters(boolParams, - stringParams.keySet(), strict); try { - parameters.parseArgs(args); - } catch (final CommandParsingException e) { - throw new CommandRunException(CommandRunExceptionType.USAGE, - "Unable to read arguments", e, this); //$NON-NLS-1$ - } - final List toProvide = new ArrayList<>(); - for (final Entry string : params.entrySet()) { - if (string.getValue().booleanValue() && - parameters.get(string.getKey()) == null) { - if (input == null || input == EmptyInput.INSTANCE) { - throw new CommandRunException( - CommandRunExceptionType.INTERACTION, - "Missing required parameter " + string.getKey(), //$NON-NLS-1$ - this); - } - toProvide.add(string.getKey()); - } - } - // for each needed parameters that is missing, prompt the user. - fillParameters(input, toProvide, parameters); - doExecute(output, input, parameters); - } - - /** Fill the undefined parameters. - *

- * This method prompts the user to fill the needed parameters. - * - * @param input the input to prompt through - * @param parameters the parameter list to complete - * @param toProvide the parameters to ask for - * @throws CommandRunException if the manager was closed */ - private final void fillParameters(final ConsoleInput input, - final List toProvide, - final CommandParameters parameters) throws CommandRunException { - for (final String string : toProvide) { - String value; - try { - value = input - .prompt(MessageFormat.format("value of {0}? ", string)); //$NON-NLS-1$ - while (value.isEmpty()) { - value = input.prompt(MessageFormat.format( - "value of {0}? (cannot be empty) ", //$NON-NLS-1$ - string)); - } - } catch (final IOException e) { - throw new CommandRunException( - CommandRunExceptionType.INTERACTION, - "Interactive command but manager closed...", e, this); //$NON-NLS-1$ - } - parameters.set(string, value); + doExecute(output, input, data.getParameters(input, args)); + } catch (final IOException e) { + throw new CommandRunException("Unable to get parameters", e, this); } } @@ -222,21 +126,21 @@ public abstract class ParametrizedCommand extends Command { * * @return the set of boolean parameters */ public final Set getBooleanParameters() { - return Collections.unmodifiableSet(boolParams); + return data.getBooleanParameters(); } /** Retrieve the parameter names. * * @return the stringParams */ public final Set getParameters() { - return params.keySet(); + return data.getParameters(); } /** Get the string parameters names. * * @return the stringParams */ public final Set getStringParameters() { - return stringParams.keySet(); + return data.getStringParameters(); } /** Test if a parameter is needed. @@ -244,13 +148,13 @@ public abstract class ParametrizedCommand extends Command { * @param param the parameter name * @return if the parameter is needed */ public final boolean isNeeded(final String param) { - return params.containsKey(param) && params.get(param).booleanValue(); + return data.isNeeded(param); } /** If the command refuse unrecognized parameters. * * @return the strict */ public final boolean isStrict() { - return strict; + return data.isStrict(); } } diff --git a/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommandData.java b/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommandData.java new file mode 100644 index 0000000..8bbb118 --- /dev/null +++ b/gclc/src/main/java/fr/bigeon/gclc/command/ParametrizedCommandData.java @@ -0,0 +1,210 @@ +/* + * Copyright Bigeon Emmanuel (2014) + * + * emmanuel@bigeon.fr + * + * This software is a computer program whose purpose is to + * provide a generic framework for console applications. + * + * This software is governed by the CeCILL license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/or redistribute the software under the terms of the CeCILL + * license as circulated by CEA, CNRS and INRIA at the following URL + * "http://www.cecill.info". + * + * As a counterpart to the access to the source code and rights to copy, + * modify and redistribute granted by the license, users are provided only + * with a limited warranty and the software's author, the holder of the + * economic rights, and the successive licensors have only limited + * liability. + * + * In this respect, the user's attention is drawn to the risks associated + * with loading, using, modifying and/or developing or reproducing the + * software by the user in light of its specific status of free software, + * that may mean that it is complicated to manipulate, and that also + * therefore means that it is reserved for developers and experienced + * professionals having in-depth computer knowledge. Users are therefore + * encouraged to load and test the software's suitability as regards their + * requirements in conditions enabling the security of their systems and/or + * data to be ensured and, more generally, to use and operate it in the + * same conditions as regards security. + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL license and that you accept its terms. + */ +/** + * gclc:fr.bigeon.gclc.command.ParametrizedCommand.java + * Created on: Dec 24, 2014 + */ +package fr.bigeon.gclc.command; + +import java.io.IOException; +import java.text.MessageFormat; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import fr.bigeon.gclc.exception.CommandParsingException; +import fr.bigeon.gclc.exception.InvalidParameterException; +import fr.bigeon.gclc.manager.ConsoleInput; +import fr.bigeon.gclc.manager.EmptyInput; + +/** An object to handle standardized command parameters. + * + * @author Emmanuel BIGEON */ +public final class ParametrizedCommandData { + + /** The boolean parameters mandatory status. */ + private final Set boolParams = new HashSet<>(); + /** The string parameters mandatory status. */ + private final Map stringParams = new HashMap<>(); + /** The parameters mandatory status. */ + private final Map params = new HashMap<>(); + /** The restriction of provided parameters on execution to declared paramters in + * the status maps. */ + private final boolean strict; + + public ParametrizedCommandData() { + this(true); + } + + public ParametrizedCommandData(final boolean strict) { + this.strict = strict; + } + + /** Add a boolean parameter to defined parmaters. + * + * @param flag the boolean flag + * @throws InvalidParameterException if the parameter is already defined as a + * string parameter */ + public final void addBooleanParameter(final String flag) + throws InvalidParameterException { + if (params.containsKey(flag) && stringParams.containsKey(flag)) { + throw new InvalidParameterException("Parameter is already defined as string"); //$NON-NLS-1$ + } + boolParams.add(flag); + params.put(flag, Boolean.FALSE); + } + + /** Add a string parameter to defined parmaters. + * + * @param flag the parameter flag + * @param needed if the parameter's absence should cause an exception + * @throws InvalidParameterException if the parameter is already defined as a + * boolean parameter */ + public final void addStringParameter(final String flag, final boolean needed) + throws InvalidParameterException { + if (params.containsKey(flag)) { + checkParam(flag, needed); + return; + } + stringParams.put(flag, Boolean.valueOf(needed)); + params.put(flag, Boolean.valueOf(needed)); + } + + /** Check a parameter. + * + * @param param the string parameter + * @param needed if the parameter is needed + * @throws InvalidParameterException if the new definition is invalid */ + private void checkParam(final String param, final boolean needed) + throws InvalidParameterException { + if (stringParams.containsKey(param)) { + final Boolean need = Boolean + .valueOf(needed || stringParams.get(param).booleanValue()); + stringParams.put(param, need); + params.put(param, need); + return; + } + throw new InvalidParameterException("Parameter is already defined as boolean"); //$NON-NLS-1$ + } + + public final CommandParameters getParameters(final ConsoleInput input, + final String... args) + throws IOException { + final CommandParameters parameters = new CommandParameters(boolParams, + stringParams.keySet(), strict); + try { + parameters.parseArgs(args); + } catch (final CommandParsingException e) { + throw new IOException(e); + } + final List toProvide = new ArrayList<>(); + for (final Entry string : params.entrySet()) { + if (string.getValue().booleanValue() + && parameters.get(string.getKey()) == null) { + if (input == null || input == EmptyInput.INSTANCE) { + throw new IOException(); + } + toProvide.add(string.getKey()); + } + } + // for each needed parameters that is missing, prompt the user. + fillParameters(input, toProvide, parameters); + return parameters; + } + + /** Fill the undefined parameters. + *

+ * This method prompts the user to fill the needed parameters. + * + * @param input the input to prompt through + * @param parameters the parameter list to complete + * @param toProvide the parameters to ask for + * @throws IOException if the manager was closed */ + private final static void fillParameters(final ConsoleInput input, + final List toProvide, final CommandParameters parameters) + throws IOException { + for (final String string : toProvide) { + String value; + value = input.prompt(MessageFormat.format("value of {0}? ", string)); //$NON-NLS-1$ + while (value.isEmpty()) { + value = input + .prompt(MessageFormat.format("value of {0}? (cannot be empty) ", //$NON-NLS-1$ + string)); + } + parameters.set(string, value); + } + } + + /** Retrieve the boolean parameters (aka flags). + * + * @return the set of boolean parameters */ + public final Set getBooleanParameters() { + return Collections.unmodifiableSet(boolParams); + } + + /** Retrieve the parameter names. + * + * @return the stringParams */ + public final Set getParameters() { + return params.keySet(); + } + + /** Get the string parameters names. + * + * @return the stringParams */ + public final Set getStringParameters() { + return stringParams.keySet(); + } + + /** Test if a parameter is needed. + * + * @param param the parameter name + * @return if the parameter is needed */ + public final boolean isNeeded(final String param) { + return params.containsKey(param) && params.get(param).booleanValue(); + } + + /** If the command refuse unrecognized parameters. + * + * @return the strict */ + public final boolean isStrict() { + return strict; + } +} diff --git a/gclc/src/test/java/fr/bigeon/gclc/CommandTestingApplication.java b/gclc/src/test/java/fr/bigeon/gclc/CommandTestingApplication.java index 09ceda8..8742860 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/CommandTestingApplication.java +++ b/gclc/src/test/java/fr/bigeon/gclc/CommandTestingApplication.java @@ -99,8 +99,7 @@ public class CommandTestingApplication implements AutoCloseable { } /** @return the next written line, null if it is the prompt - * @throws IOException if the reading failed - * @see fr.bigeon.gclc.manager.PipedConsoleManager#readNextLine() */ + * @throws IOException if the reading failed */ public String readNextLine() throws IOException { final String ret = out.readNextLine(); return ret; diff --git a/gclc/src/test/java/fr/bigeon/gclc/ConsoleTestApplication.java b/gclc/src/test/java/fr/bigeon/gclc/ConsoleTestApplication.java index e16c6cc..bb9d655 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/ConsoleTestApplication.java +++ b/gclc/src/test/java/fr/bigeon/gclc/ConsoleTestApplication.java @@ -39,6 +39,7 @@ import java.io.IOException; import fr.bigeon.gclc.command.Command; import fr.bigeon.gclc.command.ExitCommand; import fr.bigeon.gclc.command.HelpExecutor; +import fr.bigeon.gclc.command.ICommandProvider; import fr.bigeon.gclc.exception.CommandRunException; import fr.bigeon.gclc.exception.InvalidCommandName; import fr.bigeon.gclc.manager.ConsoleInput; @@ -54,14 +55,14 @@ public class ConsoleTestApplication implements ApplicationAttachement { /** Two seconds in milliseconds */ protected static final long TWO_SECONDS = 2000; - /** @param manager the manager */ + /***/ @Override @SuppressWarnings("nls") - public void attach(final ConsoleApplication application) { + public void attach(final ICommandProvider application) { try { - application.add(new ExitCommand(EXIT, application)); + application.add(new ExitCommand(EXIT, (ConsoleApplication) application)); application.add(new HelpExecutor("help", - application.root)); + ((ConsoleApplication) application).root)); application.add(new Command("test") { /* (non-Javadoc) diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/CommandParametersTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/CommandParametersTest.java index 6ea9040..1c35de0 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/CommandParametersTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/CommandParametersTest.java @@ -151,7 +151,7 @@ public class CommandParametersTest { parameters.parseArgs("-boolFlag"); assertTrue(parameters.getAdditionals().isEmpty()); - parameters.parseArgs("-ungiven"); + parameters.parseArgs("ungiven"); assertTrue(parameters.getAdditionals().contains("ungiven")); assertEquals(1, parameters.getAdditionals().size()); } @@ -159,7 +159,7 @@ public class CommandParametersTest { /** Test method for * {@link fr.bigeon.gclc.command.CommandParameters#getBool(java.lang.String)}. * - * @throws CommandParsingException */ + * @throws CommandParsingException if a command parsing failed */ @Test public final void testGetBool() throws CommandParsingException { final Set strings = new HashSet<>(); @@ -212,7 +212,7 @@ public class CommandParametersTest { /** Test method for * {@link fr.bigeon.gclc.command.CommandParameters#parseArgs(java.lang.String[])}. * - * @throws CommandParsingException */ + * @throws CommandParsingException if a command parsing failed */ @Test public final void testParseArgs() throws CommandParsingException { final Set strings = new HashSet<>(); diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/CommandProviderTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/CommandProviderTest.java index f509c38..adf0755 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/CommandProviderTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/CommandProviderTest.java @@ -54,7 +54,7 @@ public class CommandProviderTest { /** Test method for * {@link fr.bigeon.gclc.command.CommandProvider#add(fr.bigeon.gclc.command.ICommand)}. * - * @throws InvalidCommandName */ + * @throws InvalidCommandName if the test failed */ @Test public final void testAdd() throws InvalidCommandName { final CommandProvider provider = new CommandProvider(); diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/HelpExecutorTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/HelpExecutorTest.java index e504938..8bbf59e 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/HelpExecutorTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/HelpExecutorTest.java @@ -58,10 +58,10 @@ import fr.bigeon.gclc.manager.PipedConsoleOutput; public class HelpExecutorTest { /** Test method for - * {@link fr.bigeon.gclc.command.HelpExecutor#execute(java.lang.String[])}. + * {@link fr.bigeon.gclc.command.HelpExecutor#execute(ConsoleOutput, ConsoleInput, String...)}. * - * @throws CommandRunException - * @throws IOException */ + * @throws CommandRunException if the test failed + * @throws IOException if the test failed */ @Test public final void testExecute() throws CommandRunException, IOException { final PipedConsoleOutput test = new PipedConsoleOutput(); @@ -98,7 +98,7 @@ public class HelpExecutorTest { /** Test method for {@link fr.bigeon.gclc.command.HelpExecutor#tip()}. * - * @throws IOException */ + * @throws IOException if the test failed */ @Test public final void testTip() throws IOException { try (PipedConsoleOutput test = new PipedConsoleOutput()) { diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/ParametrizedCommandTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/ParametrizedCommandTest.java index ea31d53..a1d0ea7 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/ParametrizedCommandTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/ParametrizedCommandTest.java @@ -69,9 +69,9 @@ import fr.bigeon.gclc.manager.PipedConsoleOutput; public class ParametrizedCommandTest { /** Test method for - * {@link fr.bigeon.gclc.command.ParametrizedCommand#addParameter(java.lang.String, boolean, boolean)}. + * {@link fr.bigeon.gclc.command.ParametrizedCommand#addStringParameter(String, boolean)}. * - * @throws InvalidParameterException */ + * @throws InvalidParameterException if the test failed */ @Test public final void testAddParameter() throws InvalidParameterException { ParametrizedCommand cmd = new ParametrizedCommand("name") { @@ -138,11 +138,11 @@ public class ParametrizedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.ParametrizedCommand#execute(java.lang.String[])}. + * {@link fr.bigeon.gclc.command.ParametrizedCommand#execute(ConsoleOutput, ConsoleInput, String...)}. * - * @throws CommandRunException - * @throws InterruptedException - * @throws IOException */ + * @throws CommandRunException if the test failed + * @throws InterruptedException if the test failed + * @throws IOException if the test failed */ @Test public final void testExecute() throws CommandRunException, InterruptedException, IOException { @@ -183,9 +183,7 @@ public class ParametrizedCommandTest { } }; cmd.execute(null, null); - cmd.execute(null, null, "-" + addParam); cmd.execute(null, null, addParam); - cmd.execute(null, null, "-" + addParam, addParam); cmd = new ParametrizedCommand("name", false) { private int call = 0; { @@ -555,7 +553,7 @@ public class ParametrizedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.ParametrizedCommand#ParametrizedCommand(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String)}. */ + * {@link fr.bigeon.gclc.command.ParametrizedCommand#ParametrizedCommand(String)}. */ @Test public final void testParametrizedCommandConsoleManagerString() { ParametrizedCommand cmd = new ParametrizedCommand("name") { @@ -619,7 +617,7 @@ public class ParametrizedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.ParametrizedCommand#ParametrizedCommand(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String, boolean)}. */ + * {@link fr.bigeon.gclc.command.ParametrizedCommand#ParametrizedCommand(java.lang.String, boolean)}. */ @Test public final void testParametrizedCommandConsoleManagerStringBoolean() { ParametrizedCommand cmd = new ParametrizedCommand("name", false) { diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/ScriptExecutionTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/ScriptExecutionTest.java index 7a43534..8b4f90b 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/ScriptExecutionTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/ScriptExecutionTest.java @@ -61,9 +61,8 @@ import fr.bigeon.gclc.manager.PipedConsoleOutput; @SuppressWarnings("static-method") public class ScriptExecutionTest { - /** - * Test method for {@link fr.bigeon.gclc.command.ScriptExecution#execute(java.lang.String[])}. - */ + /** Test method for + * {@link fr.bigeon.gclc.command.ScriptExecution#execute(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String...)}. */ @Test public void testExecute() { PipedConsoleOutput test; @@ -158,7 +157,7 @@ public class ScriptExecutionTest { } /** Test method for - * {@link fr.bigeon.gclc.command.ScriptExecution#help(fr.bigeon.gclc.manager.ConsoleManager, String...)}. */ + * {@link fr.bigeon.gclc.command.ScriptExecution#help(fr.bigeon.gclc.manager.ConsoleOutput, String...)}. */ @Test public void testHelp() { final ScriptExecution exec = new ScriptExecution("script", null, "#", //$NON-NLS-1$ //$NON-NLS-2$ diff --git a/gclc/src/test/java/fr/bigeon/gclc/command/SubedCommandTest.java b/gclc/src/test/java/fr/bigeon/gclc/command/SubedCommandTest.java index 163765f..bdb40c3 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/command/SubedCommandTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/command/SubedCommandTest.java @@ -88,7 +88,7 @@ public class SubedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.SubedCommand#execute(java.lang.String[])}. */ + * {@link fr.bigeon.gclc.command.SubedCommand#execute(ConsoleOutput, ConsoleInput, String...)}. */ @Test public final void testExecute() { SubedCommand cmd = new SubedCommand("name"); @@ -190,7 +190,7 @@ public class SubedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.SubedCommand#executeSub(java.lang.String, java.lang.String[])}. */ + * {@link fr.bigeon.gclc.command.SubedCommand#executeSub(ConsoleOutput, ConsoleInput, String, String...)}. */ @Test public final void testExecuteSub() { final SubedCommand cmd = new SubedCommand("name"); @@ -272,7 +272,7 @@ public class SubedCommandTest { } /** Test method for - * {@link fr.bigeon.gclc.command.SubedCommand#help(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String[])}. */ + * {@link fr.bigeon.gclc.command.SubedCommand#help(ConsoleOutput, String...)}. */ @Test public final void testHelp() { SubedCommand cmd = new SubedCommand("name"); diff --git a/gclc/src/test/java/fr/bigeon/gclc/manager/ReadingRunnableTest.java b/gclc/src/test/java/fr/bigeon/gclc/manager/ReadingRunnableTest.java index 849c427..4dfae41 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/manager/ReadingRunnableTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/manager/ReadingRunnableTest.java @@ -84,8 +84,8 @@ public class ReadingRunnableTest { /** Test method for * {@link fr.bigeon.gclc.manager.ReadingRunnable#getWaitForDelivery(java.lang.String)}. * - * @throws InterruptedException - * @throws IOException */ + * @throws InterruptedException if the test failed + * @throws IOException if the test failed */ @Test public final void testGetWaitForDelivery() throws InterruptedException, IOException { diff --git a/gclc/src/test/java/fr/bigeon/gclc/manager/SystemConsoleManagerTest.java b/gclc/src/test/java/fr/bigeon/gclc/manager/SystemConsoleManagerTest.java index 1ae9bf1..b8205ae 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/manager/SystemConsoleManagerTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/manager/SystemConsoleManagerTest.java @@ -59,11 +59,10 @@ import org.junit.Test; * @author Emmanuel Bigeon */ public class SystemConsoleManagerTest { - /** Test method for - * {@link fr.bigeon.gclc.manager.SystemConsoleManager#isClosed()}. + /** Test method for {@link fr.bigeon.gclc.manager.ConsoleInput#isClosed()}. * - * @throws IOException - * @throws InterruptedException */ + * @throws IOException if the test failed + * @throws InterruptedException if the test failed */ @Test public final void testIsClosed() throws IOException, InterruptedException { final PipedOutputStream outStream = new PipedOutputStream(); @@ -96,11 +95,10 @@ public class SystemConsoleManagerTest { th.join(); } - /** Test method for - * {@link fr.bigeon.gclc.manager.SystemConsoleManager#prompt()}. + /** Test method for {@link fr.bigeon.gclc.manager.ConsoleInput#prompt()}. * - * @throws IOException - * @throws InterruptedException */ + * @throws IOException if the test failed + * @throws InterruptedException if the test failed */ @Test public final void testPrompt() throws IOException, InterruptedException { @@ -128,9 +126,9 @@ public class SystemConsoleManagerTest { } /** Test method for - * {@link fr.bigeon.gclc.manager.SystemConsoleManager#setPrompt(java.lang.String)}. + * {@link fr.bigeon.gclc.manager.ConsoleInput#setPrompt(java.lang.String)}. * - * @throws IOException */ + * @throws IOException if the test failed */ @Test public final void testSetPrompt() throws IOException { try (PipedOutputStream outStream = new PipedOutputStream(); diff --git a/gclc/src/test/java/fr/bigeon/gclc/prompt/CLIPrompterTest.java b/gclc/src/test/java/fr/bigeon/gclc/prompt/CLIPrompterTest.java index 30dfd4d..07645c8 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/prompt/CLIPrompterTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/prompt/CLIPrompterTest.java @@ -82,7 +82,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptBoolean(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptBoolean(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String)}. */ @Test public final void testPromptBoolean() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -132,7 +132,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.List, java.util.List, java.lang.String, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, List, List, String, String)}. */ @Test public final void testPromptChoiceConsoleManagerListOfStringListOfUStringString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -416,7 +416,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.Map, java.lang.String, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, Map, String, String)}. */ @Test public final void testPromptChoiceConsoleManagerMapOfUTStringString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -513,7 +513,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptInteger(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptInteger(fr.bigeon.gclc.manager.ConsoleInput, String)}. */ @Test public final void testPromptInteger() { try (PipedOutputStream pout = new PipedOutputStream(); @@ -557,7 +557,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptList(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptList(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String)}. */ @Test public final void testPromptListConsoleManagerString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -621,7 +621,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptList(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptList(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String, String)}. */ @Test public final void testPromptListConsoleManagerStringString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -683,7 +683,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptLongText(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptLongText(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String)}. */ @Test public final void testPromptLongTextConsoleManagerString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -751,7 +751,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptLongText(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptLongText(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, String, String)}. */ @Test public final void testPromptLongTextConsoleManagerStringString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -815,7 +815,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.List, java.util.List, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, List, List, String)}. */ @Test public final void testPromptMultiChoiceConsoleManagerListOfStringListOfUString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -907,7 +907,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.List, java.util.Map, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, List, Map, String)}. */ @Test public final void testPromptMultiChoiceConsoleManagerListOfUMapOfUTString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -999,7 +999,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.List, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, List, String)}. */ @Test public final void testPromptMultiChoiceConsoleManagerListOfUString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -1088,7 +1088,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleManager, java.util.Map, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptMultiChoice(fr.bigeon.gclc.manager.ConsoleOutput, fr.bigeon.gclc.manager.ConsoleInput, Map, String)}. */ @Test public final void testPromptMultiChoiceConsoleManagerMapOfUTString() { try (final PipedConsoleOutput out = new PipedConsoleOutput(); @@ -1172,7 +1172,7 @@ public class CLIPrompterTest { } /** Test method for - * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptNonEmpty(fr.bigeon.gclc.manager.ConsoleManager, java.lang.String, java.lang.String)}. */ + * {@link fr.bigeon.gclc.prompt.CLIPrompter#promptNonEmpty(fr.bigeon.gclc.manager.ConsoleInput, String, String)}. */ @Test public final void testPromptNonEmpty() { try (PipedOutputStream pout = new PipedOutputStream(); diff --git a/gclc/src/test/java/fr/bigeon/gclc/tools/AOutputForwardRunnableTest.java b/gclc/src/test/java/fr/bigeon/gclc/tools/AOutputForwardRunnableTest.java index 7576a23..6672011 100644 --- a/gclc/src/test/java/fr/bigeon/gclc/tools/AOutputForwardRunnableTest.java +++ b/gclc/src/test/java/fr/bigeon/gclc/tools/AOutputForwardRunnableTest.java @@ -61,7 +61,6 @@ public class AOutputForwardRunnableTest { private int count = 2; private String message; - /** @param manager */ private AOutputForwardTestRunnable(final PipedConsoleOutput manager) { super(manager); }