package org.richfaces.component.tabPanel; import static org.jboss.arquillian.graphene.Graphene.guardAjax; import java.util.List; import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.richfaces.fragment.tabPanel.RichFacesTabPanel; public class DynamicTabTestHelper { public void check_tab_switch(RichFacesTabPanel tabPanel, WebElement a4jCreateTabButton) { List<WebElement> tabs = tabPanel.advanced().getTabHeaders(); Assert.assertEquals(6, tabs.size()); tabs.get(1).click(); Assert.assertEquals("content of tab 0", tabPanel.advanced().getVisibleContent().getText()); guardAjax(tabs.get(2)).click(); Assert.assertEquals("content of tab 2", tabPanel.advanced().getVisibleContent().getText()); guardAjax(tabs.get(4)).click(); Assert.assertEquals("content of tab 4", tabPanel.advanced().getVisibleContent().getText()); guardAjax(tabs.get(5)).click(); Assert.assertEquals("content of tab 5", tabPanel.advanced().getVisibleContent().getText()); guardAjax(tabs.get(0)).click(); Assert.assertEquals("content of tab 0", tabPanel.advanced().getVisibleContent().getText()); guardAjax(a4jCreateTabButton).click(); Assert.assertEquals(7, tabs.size()); guardAjax(tabs.get(6)).click(); Assert.assertEquals("content of tab 6", tabPanel.advanced().getVisibleContent().getText()); guardAjax(tabs.get(0)).click(); Assert.assertEquals("content of tab 0",tabPanel.advanced().getVisibleContent().getText()); WebElement removeLink = tabs.get(6).findElement(By.tagName("a")); guardAjax(removeLink).click(); Assert.assertEquals(6, tabs.size()); } public void check_row_removal(RichFacesTabPanel tabPanel, WebElement a4jCreateTabButton) { List<WebElement> tabs = tabPanel.advanced().getTabHeaders(); Assert.assertEquals(6, tabs.size()); guardAjax(a4jCreateTabButton).click(); guardAjax(a4jCreateTabButton).click(); guardAjax(a4jCreateTabButton).click(); Assert.assertEquals(9, tabs.size()); WebElement removeLink = tabs.get(8).findElement(By.tagName("a")); guardAjax(removeLink).click(); Assert.assertEquals(8, tabs.size()); removeLink = tabs.get(7).findElement(By.tagName("a")); guardAjax(removeLink).click(); Assert.assertEquals(7, tabs.size()); removeLink = tabs.get(6).findElement(By.tagName("a")); guardAjax(removeLink).click(); Assert.assertEquals(6, tabs.size()); } }