Init changes
(cherry picked from commit 31d8cab)
This commit is contained in:
parent
700740a378
commit
ccfaf72b09
1 changed files with 98 additions and 0 deletions
|
@ -1,14 +1,112 @@
|
||||||
package org.keycloak.testsuite.console.page.clients;
|
package org.keycloak.testsuite.console.page.clients;
|
||||||
|
|
||||||
|
import org.keycloak.representations.idm.ProtocolMapperRepresentation;
|
||||||
|
import org.keycloak.testsuite.console.page.fragment.DataTable;
|
||||||
|
import org.openqa.selenium.By;
|
||||||
|
import org.openqa.selenium.WebElement;
|
||||||
|
import org.openqa.selenium.support.FindBy;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author tkyjovsk
|
* @author tkyjovsk
|
||||||
|
* @author Vaclav Muzikar <vmuzikar@redhat.com>
|
||||||
*/
|
*/
|
||||||
public class ClientMappers extends Client {
|
public class ClientMappers extends Client {
|
||||||
|
|
||||||
|
public static final String ADD_BUILTIN = "Add Builtin";
|
||||||
|
|
||||||
|
@FindBy(tagName = "table")
|
||||||
|
private ClientMapperTable table;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUriFragment() {
|
public String getUriFragment() {
|
||||||
return super.getUriFragment() + "/mappers";
|
return super.getUriFragment() + "/mappers";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ClientMapperTable mapperTable() {
|
||||||
|
return table;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ClientMapperTable extends DataTable {
|
||||||
|
|
||||||
|
public List<ProtocolMapperRepresentation> searchMappings(String searchPattern) {
|
||||||
|
search(searchPattern);
|
||||||
|
return getMappingsFromRows();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void createMapper() {
|
||||||
|
waitAjaxForBody();
|
||||||
|
clickHeaderLink(CREATE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addBuiltin() {
|
||||||
|
waitAjaxForBody();
|
||||||
|
clickHeaderLink(ADD_BUILTIN);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clickMapper(String mapperName) {
|
||||||
|
waitAjaxForBody();
|
||||||
|
body().findElement(By.linkText(mapperName)).click();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clickMapper(ProtocolMapperRepresentation mapper) {
|
||||||
|
clickMapper(mapper.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void clickMapperActionButton(String mapperName, String buttonText) {
|
||||||
|
waitAjaxForBody();
|
||||||
|
clickRowActionButton(getRowByLinkText(mapperName), buttonText);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void clickMapperActionButton(ProtocolMapperRepresentation mapper, String buttonName) {
|
||||||
|
clickMapperActionButton(mapper.getName(), buttonName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void editMapper(String mapperName) {
|
||||||
|
clickMapperActionButton(mapperName, EDIT);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void editMapper(ProtocolMapperRepresentation mapper) {
|
||||||
|
clickMapperActionButton(mapper, EDIT);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void deleteMapper(String mapperName) {
|
||||||
|
clickMapperActionButton(mapperName, DELETE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void deleteMapper(ProtocolMapperRepresentation mapper) {
|
||||||
|
clickMapperActionButton(mapper, DELETE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ProtocolMapperRepresentation getMappingFromRow(WebElement row) {
|
||||||
|
if (!row.isDisplayed()) {return null;} // Is that necessary?
|
||||||
|
|
||||||
|
ProtocolMapperRepresentation mappingsRepresentation = new ProtocolMapperRepresentation();
|
||||||
|
List<WebElement> cols = row.findElements(By.tagName("td"));
|
||||||
|
|
||||||
|
|
||||||
|
mappingsRepresentation.setName(cols.get(0).getText());
|
||||||
|
//mappingsRepresentation.setProtocol(cols.get(1).getText());
|
||||||
|
mappingsRepresentation.setProtocolMapper(cols.get(2).getText());
|
||||||
|
|
||||||
|
return mappingsRepresentation;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ProtocolMapperRepresentation> getMappingsFromRows() {
|
||||||
|
List<ProtocolMapperRepresentation> mappings = new ArrayList<ProtocolMapperRepresentation>();
|
||||||
|
|
||||||
|
for (WebElement row : rows()) {
|
||||||
|
ProtocolMapperRepresentation mapperRepresentation = getMappingFromRow(row);
|
||||||
|
if (mapperRepresentation != null) {
|
||||||
|
mappings.add(mapperRepresentation);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return mappings;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue