package hudson.plugins.jira; import hudson.cli.BuildCommand; import hudson.cli.CLICommandInvoker; import hudson.model.FreeStyleProject; import hudson.model.ParametersDefinitionProperty; import hudson.plugins.jira.listissuesparameter.JiraIssueParameterDefinition; import hudson.plugins.jira.versionparameter.JiraVersionParameterDefinition; import org.junit.Rule; import org.junit.Test; import org.junit.rules.TemporaryFolder; import org.jvnet.hudson.test.JenkinsRule; import static org.junit.Assert.*; import static hudson.cli.CLICommandInvoker.Matcher.*; public class CliParameterTest { @Rule public JenkinsRule jenkins = new JenkinsRule(); @Rule public TemporaryFolder temporaryFolderRule = new TemporaryFolder(); @Test public void testJiraIssueParameterViaCli() throws Exception { FreeStyleProject project = jenkins.createFreeStyleProject(); project.addProperty( new ParametersDefinitionProperty( new JiraIssueParameterDefinition("jiraissue", "description", "filter") ) ); CLICommandInvoker invoker = new CLICommandInvoker(jenkins, new BuildCommand()); CLICommandInvoker.Result result = invoker.invokeWithArgs(project.getName(), "-p", "jiraissue=TEST-1"); assertThat(result, succeeded()); } @Test public void testJiraVersionParameterViaCli() throws Exception { FreeStyleProject project = jenkins.createFreeStyleProject(); project.addProperty( new ParametersDefinitionProperty( new JiraVersionParameterDefinition("jiraversion", "description", "PROJ", "RELEASE", "true", "false") ) ); CLICommandInvoker invoker = new CLICommandInvoker(jenkins, new BuildCommand()); CLICommandInvoker.Result result = invoker.invokeWithArgs(project.getName(), "-p", "jiraversion=1.0"); assertThat(result, succeeded()); } }