Skip to content

HtmlFormUtil.getSubmitButton picks wrong button for Jenkins config forms #703

@jglick

Description

@jglick

Discovered in #702.

diff --git pom.xml pom.xml
index d4b87033d5..54dd8292c1 100644
--- pom.xml
+++ pom.xml
@@ -56,7 +56,7 @@ THE SOFTWARE.
 
   <properties>
     <changelist>999999-SNAPSHOT</changelist>
-    <jenkins.version>2.361</jenkins.version>
+    <jenkins.version>2.437</jenkins.version>
     <jmh.version>1.37</jmh.version>
     <gitHubRepo>jenkinsci/${project.artifactId}</gitHubRepo>
     <!-- Normally filled in by "maven-hpi-plugin" with the path to "org-netbeans-insane-hook.jar" extracted from this repository -->
diff --git src/main/java/org/htmlunit/html/HtmlFormUtil.java src/main/java/org/htmlunit/html/HtmlFormUtil.java
index c5bcccd75c..e696c9db67 100644
--- src/main/java/org/htmlunit/html/HtmlFormUtil.java
+++ src/main/java/org/htmlunit/html/HtmlFormUtil.java
@@ -50,6 +50,7 @@ public class HtmlFormUtil {
      */
     public static Page submit(final HtmlForm htmlForm) throws IOException {
         HtmlElement submitElement = getSubmitButton(htmlForm);
+        System.err.println("TODO submitElement=" + submitElement);
         return submit(htmlForm, submitElement);
     }
 
diff --git src/test/java/org/jvnet/hudson/test/SleepBuilderTest.java src/test/java/org/jvnet/hudson/test/SleepBuilderTest.java
index 1ae1b411a8..bab6aa6fef 100644
--- src/test/java/org/jvnet/hudson/test/SleepBuilderTest.java
+++ src/test/java/org/jvnet/hudson/test/SleepBuilderTest.java
@@ -14,8 +14,7 @@ public class SleepBuilderTest {
         FreeStyleProject project = j.createFreeStyleProject();
         SleepBuilder builder = new SleepBuilder(30);
         project.getBuildersList().add(builder);
-        j.configRoundtrip(project);
-        j.assertEqualDataBoundBeans(project.getBuildersList().get(SleepBuilder.class), builder);
+        j.configRoundtrip();
     }
 
 }

You might expect this to print the Save button. But that is not an <input type="submit">, it is some YUI craziness. Instead it picks

HtmlButton[<button tooltip="Copy home directory" text="/tmp/j h1749655323416403161" message="Copied" type="button" class="copy-button jenkins-button jenkins-button--tertiary jenkins-copy-button jenkins-!-margin-left-1" title="Copy home directory">]

And of course you do not want to click that. Yet it seems that HtmlForm.submit quietly accepts this and submits the form anyway.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions