diff --git a/src/test/java/jp/ikedam/jenkins/plugins/extensible_choice_parameter/FilenameChoiceListProviderJenkinsTest.java b/src/test/java/jp/ikedam/jenkins/plugins/extensible_choice_parameter/FilenameChoiceListProviderJenkinsTest.java index 0393a75..c633603 100644 --- a/src/test/java/jp/ikedam/jenkins/plugins/extensible_choice_parameter/FilenameChoiceListProviderJenkinsTest.java +++ b/src/test/java/jp/ikedam/jenkins/plugins/extensible_choice_parameter/FilenameChoiceListProviderJenkinsTest.java @@ -37,6 +37,11 @@ import org.apache.commons.lang.SystemUtils; import org.junit.Rule; import org.junit.Test; +import org.jvnet.hudson.test.Bug; +import org.jvnet.hudson.test.JenkinsRule.WebClient; + +import com.gargoylesoftware.htmlunit.html.HtmlElement; +import com.gargoylesoftware.htmlunit.html.HtmlPage; /** * Tests for FilenameChoiceListProvider, concerned with Jenkins. @@ -303,4 +308,35 @@ public void testDescriptor_doCheckExcludePattern() throws IOException ); } } + + @Bug(28841) + @Test + public void testDoTest() throws Exception + { + FreeStyleProject p = j.createFreeStyleProject(); + p.addProperty(new ParametersDefinitionProperty(new ExtensibleChoiceParameterDefinition( + "Choice", + new FilenameChoiceListProvider( + ".", + "*", + "", + FilenameChoiceListProvider.ScanType.File, + false, + FilenameChoiceListProvider.EmptyChoiceType.None + ), + false, + "" + ))); + + WebClient wc = j.createWebClient(); + HtmlPage page = wc.getPage(p, "configure"); + + // find the button to call doTest + //List elements = page.getElementsByName("choiceListProvider"); + //assertEquals(1, elements.size()); + //HtmlElement choiceListProviderBlock = elements.get(0); + HtmlElement button = page.getFirstByXPath("//*[@name='choiceListProvider']//button|//*[@name='choiceListProvider']//input[@type='button']"); + assertNotNull(button); + button.click(); + } }