diff --git a/test/pom.xml b/test/pom.xml index 6d70dd88053ab5a73a60297c73d371c82441c559..22df2c180e00ce8eabb046d974b5bb4bcf9118de 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -241,55 +241,6 @@ THE SOFTWARE. ${concurrency} - - org.codehaus.gmaven - gmaven-plugin - 1.5-jenkins-3 - - - default - - - generateTestStubs - testCompile - - - - - - org.apache.ant - ant - 1.8.0 - - - - org.apache.ant - ant-launcher - 1.8.0 - - - org.apache.ant - ant-junit - 1.7.0 - - - - javax.servlet - javax.servlet-api - 3.1.0 - - - org.codehaus.gmaven.runtime - gmaven-runtime-2.0 - 1.5-jenkins-3 - - - - - 2.0 - - maven-deploy-plugin diff --git a/test/src/test/groovy/lib/form/TextAreaTest.groovy b/test/src/test/groovy/lib/form/TextAreaTest.groovy deleted file mode 100644 index f5edc5cac3faf1485bec570ea953ce1984338ebd..0000000000000000000000000000000000000000 --- a/test/src/test/groovy/lib/form/TextAreaTest.groovy +++ /dev/null @@ -1,128 +0,0 @@ -package lib.form - -import hudson.model.AbstractProject -import hudson.tasks.BuildStepDescriptor -import hudson.tasks.Builder -import hudson.util.FormValidation -import org.junit.Rule -import org.junit.Test -import org.jvnet.hudson.test.Issue -import org.jvnet.hudson.test.JenkinsRule -import org.jvnet.hudson.test.TestExtension -import org.kohsuke.stapler.DataBoundConstructor -import org.kohsuke.stapler.QueryParameter - -import javax.inject.Inject - -import static org.junit.Assert.* - -/** - * - * - * @author Kohsuke Kawaguchi - */ -class TextAreaTest { - @Rule - public JenkinsRule j = new JenkinsRule(); - - @Inject - TestBuilder.DescriptorImpl d; - - @Test @Issue("JENKINS-19457") - public void validation() { - j.jenkins.injector.injectMembers(this) - def p = j.createFreeStyleProject() - p.buildersList.add(new TestBuilder()) - j.configRoundtrip(p) - assert d.text1=="This is text1" - assert d.text2=="Received This is text1" - } - - public static class TestBuilder extends Builder { - @DataBoundConstructor - TestBuilder() { - } - - public String getText1() { return "This is text1" } - public String getText2() { return "This is text2" } - - @TestExtension - public static class DescriptorImpl extends BuildStepDescriptor { - def text1,text2; - - @Override - boolean isApplicable(Class jobType) { - return true; - } - - FormValidation doCheckText1(@QueryParameter String value) { - this.text1 = value; - return FormValidation.ok(); - } - - FormValidation doCheckText2(@QueryParameter String text1) { - this.text2 = "Received "+text1; - return FormValidation.ok(); - } - } - - } - - @Issue("JENKINS-27505") - @Test - public void testText() { - T1:{ - def TEXT_TO_TEST = "some\nvalue\n"; - def p = j.createFreeStyleProject(); - def target = new TextareaTestBuilder(TEXT_TO_TEST); - p.buildersList.add(target); - j.configRoundtrip(p); - j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); - } - - // test for a textarea beginning with a empty line. - T2:{ - def TEXT_TO_TEST = "\nbegin\n\nwith\nempty\nline\n\n"; - def p = j.createFreeStyleProject(); - def target = new TextareaTestBuilder(TEXT_TO_TEST); - p.buildersList.add(target); - j.configRoundtrip(p); - j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); - } - - // test for a textarea beginning with two empty lines. - T3:{ - def TEXT_TO_TEST = "\n\nbegin\n\nwith\ntwo\nempty\nline\n\n"; - def p = j.createFreeStyleProject(); - def target = new TextareaTestBuilder(TEXT_TO_TEST); - p.buildersList.add(target); - j.configRoundtrip(p); - j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); - } - } - - public static class TextareaTestBuilder extends Builder { - private text; - - @DataBoundConstructor - TextareaTestBuilder(String text) { - this.text = text; - } - - public String getText() { return text; } - - @TestExtension - public static class DescriptorImpl extends BuildStepDescriptor { - @Override - boolean isApplicable(Class jobType) { - return true; - } - - @Override - String getDisplayName() { - return this.class.name; - } - } - - } -} diff --git a/test/src/test/groovy/jenkins/bugs/Jenkins41511Test.java b/test/src/test/java/jenkins/bugs/Jenkins41511Test.java similarity index 100% rename from test/src/test/groovy/jenkins/bugs/Jenkins41511Test.java rename to test/src/test/java/jenkins/bugs/Jenkins41511Test.java diff --git a/test/src/test/java/lib/form/TextAreaTest.java b/test/src/test/java/lib/form/TextAreaTest.java new file mode 100644 index 0000000000000000000000000000000000000000..9324554af0a0bb5cba6e507fc0ca68c7244618ba --- /dev/null +++ b/test/src/test/java/lib/form/TextAreaTest.java @@ -0,0 +1,129 @@ +package lib.form; + +import hudson.model.AbstractProject; +import hudson.model.FreeStyleProject; +import hudson.tasks.BuildStepDescriptor; +import hudson.tasks.Builder; +import hudson.util.FormValidation; +import javax.inject.Inject; +import static org.junit.Assert.*; +import org.junit.Rule; +import org.junit.Test; +import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.JenkinsRule; +import org.jvnet.hudson.test.TestExtension; +import org.kohsuke.stapler.DataBoundConstructor; +import org.kohsuke.stapler.QueryParameter; + +public class TextAreaTest { + + @Rule + public JenkinsRule j = new JenkinsRule(); + + @Inject + public TestBuilder.DescriptorImpl d; + + @Test + @Issue("JENKINS-19457") + public void validation() throws Exception { + j.jenkins.getInjector().injectMembers(this); + FreeStyleProject p = j.createFreeStyleProject(); + p.getBuildersList().add(new TestBuilder()); + j.configRoundtrip(p); + assertEquals("This is text1", d.text1); + assertEquals("Received This is text1", d.text2); + } + + public static class TestBuilder extends Builder { + + @DataBoundConstructor + public TestBuilder() {} + + public String getText1() { + return "This is text1"; + } + public String getText2() { + return "This is text2"; + } + + @TestExtension + public static class DescriptorImpl extends BuildStepDescriptor { + + String text1, text2; + + @Override + public boolean isApplicable(Class jobType) { + return true; + } + + public FormValidation doCheckText1(@QueryParameter String value) { + this.text1 = value; + return FormValidation.ok(); + } + + public FormValidation doCheckText2(@QueryParameter String text1) { + this.text2 = "Received " + text1; + return FormValidation.ok(); + } + } + + } + + @Issue("JENKINS-27505") + @Test + public void text() throws Exception { + T1: { + String TEXT_TO_TEST = "some\nvalue\n"; + FreeStyleProject p = j.createFreeStyleProject(); + TextareaTestBuilder target = new TextareaTestBuilder(TEXT_TO_TEST); + p.getBuildersList().add(target); + j.configRoundtrip(p); + j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); + } + + // test for a textarea beginning with a empty line. + T2: { + String TEXT_TO_TEST = "\nbegin\n\nwith\nempty\nline\n\n"; + FreeStyleProject p = j.createFreeStyleProject(); + TextareaTestBuilder target = new TextareaTestBuilder(TEXT_TO_TEST); + p.getBuildersList().add(target); + j.configRoundtrip(p); + j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); + } + + // test for a textarea beginning with two empty lines. + T3: { + String TEXT_TO_TEST = "\n\nbegin\n\nwith\ntwo\nempty\nline\n\n"; + FreeStyleProject p = j.createFreeStyleProject(); + TextareaTestBuilder target = new TextareaTestBuilder(TEXT_TO_TEST); + p.getBuildersList().add(target); + j.configRoundtrip(p); + j.assertEqualDataBoundBeans(target, p.getBuildersList().get(TextareaTestBuilder.class)); + } + } + + public static class TextareaTestBuilder extends Builder { + + private String text; + + @DataBoundConstructor + public TextareaTestBuilder(String text) { + this.text = text; + } + + public String getText() { + return text; + } + + @TestExtension + public static class DescriptorImpl extends BuildStepDescriptor { + @Override + public boolean isApplicable(Class jobType) { + return true; + } + + } + + } + +}