Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed May 29, 2020
2 parents 649a597 + f26be78 commit 570032b
Show file tree
Hide file tree
Showing 9 changed files with 91 additions and 16 deletions.
Expand Up @@ -57,7 +57,7 @@ public class Search implements Serializable, DebugDumpable {

private boolean showAdvanced = false;
private boolean isFullTextSearchEnabled = false;
private boolean canConfigure;
private boolean canConfigure = true; //TODO should be changed to false

private String advancedQuery;
private String advancedError;
Expand Down
Expand Up @@ -323,7 +323,7 @@ private static <T extends ObjectType> SearchItemsType getConfiguredSearchItems(M
private static <T extends ObjectType> boolean isAllowToConfigureSearchItems(ModelServiceLocator modelServiceLocator, Class<T> type, String collectionViewName){
SearchBoxConfigurationType searchConfig = getSearchBoxConfiguration(modelServiceLocator, type, collectionViewName);
if (searchConfig == null || searchConfig.isAllowToConfigureSearchItems() == null){
return false;
return true; //todo should be set to false
}
return searchConfig.isAllowToConfigureSearchItems();
}
Expand Down
@@ -0,0 +1,29 @@
/*
* Copyright (c) 2010-2020 Evolveum and contributors
*
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/

package com.evolveum.midpoint.repo.sql.helpers.mapper;

import com.evolveum.midpoint.repo.sql.data.common.enums.RExportType;
import com.evolveum.midpoint.repo.sql.helpers.modify.MapperContext;
import com.evolveum.midpoint.repo.sql.util.RUtil;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ExportConfigurationType;

import javax.xml.namespace.QName;

/**
* @author lskublik
*/
public class ReportExportConfigurationMapper implements Mapper<ExportConfigurationType, RExportType> {

@Override
public RExportType map(ExportConfigurationType input, MapperContext context) {
if (input.getType() == null) {
return null;
}
return RExportType.valueOf(input.getType().name());
}
}
Expand Up @@ -18,6 +18,7 @@
import com.evolveum.midpoint.repo.sql.data.common.container.*;
import com.evolveum.midpoint.repo.sql.data.common.dictionary.ExtItemDictionary;
import com.evolveum.midpoint.repo.sql.data.common.embedded.*;
import com.evolveum.midpoint.repo.sql.data.common.enums.RExportType;
import com.evolveum.midpoint.repo.sql.data.common.enums.SchemaEnum;
import com.evolveum.midpoint.repo.sql.helpers.BaseHelper;
import com.evolveum.midpoint.repo.sql.helpers.mapper.*;
Expand Down Expand Up @@ -60,6 +61,7 @@ public class PrismEntityMapper {
MAPPERS.put(new Key(MetadataType.class, Metadata.class), new MetadataMapper());

MAPPERS.put(new Key(byte[].class, RFocusPhoto.class), new RFocusPhotoMapper());
MAPPERS.put(new Key(ExportConfigurationType.class, RExportType.class), new ReportExportConfigurationMapper());
}

@Autowired private RepositoryService repositoryService;
Expand Down
Expand Up @@ -11,6 +11,11 @@
import com.codeborne.selenide.Condition;
import com.codeborne.selenide.Selenide;
import com.codeborne.selenide.SelenideElement;

import com.evolveum.midpoint.schrodinger.component.common.Search;
import com.evolveum.midpoint.schrodinger.component.common.SearchItemField;
import com.evolveum.midpoint.schrodinger.component.modal.ObjectBrowserModal;

import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
Expand Down Expand Up @@ -234,10 +239,11 @@ public void test140forwardCaseAction() {
.clickByName(ASSIGNING_ROLE_CASE_NAME + FORWARD_WORKITEM_TEST_USER_NAME);

ForwardWorkitemModal forwardWorkitemModal = workitemDetailsPanel.forwardButtonClick();
forwardWorkitemModal
SearchItemField<Search<ForwardWorkitemModal>> nameSearchField = forwardWorkitemModal
.table()
.search()
.byName()
.byName();
nameSearchField
.inputValue(FORWARD_WORKITEM_TO_USER_NAME)
.updateSearch();
forwardWorkitemModal
Expand Down
Expand Up @@ -11,6 +11,8 @@
import com.codeborne.selenide.SelenideElement;
import com.evolveum.midpoint.schrodinger.MidPoint;
import com.evolveum.midpoint.schrodinger.component.common.PrismForm;
import com.evolveum.midpoint.schrodinger.component.common.Search;
import com.evolveum.midpoint.schrodinger.component.common.SearchItemField;
import com.evolveum.midpoint.schrodinger.component.configuration.AdminGuiTab;
import com.evolveum.midpoint.schrodinger.component.modal.ObjectBrowserModal;
import com.evolveum.midpoint.schrodinger.page.user.ListUsersPage;
Expand Down Expand Up @@ -81,13 +83,14 @@ public void configureArchetypeObjectListView(){
.waitUntil(Condition.appear, MidPoint.TIMEOUT_DEFAULT_2_S);

ObjectBrowserModal objectBrowserModal = new ObjectBrowserModal<>(prismForm, modalWindow);
objectBrowserModal
SearchItemField<Search<ObjectBrowserModal>> nameSearchField = objectBrowserModal
.selectType("Archetype")
.table()
.search()
.byName()
.inputValue(ARCHETYPE_OBJECT_NAME)
.updateSearch();
.byName();
nameSearchField
.inputValue(ARCHETYPE_OBJECT_NAME)
.updateSearch();
objectBrowserModal
.table()
.clickByName(ARCHETYPE_OBJECT_NAME);
Expand Down
Expand Up @@ -13,6 +13,10 @@
import com.evolveum.midpoint.schrodinger.component.Component;
import com.evolveum.midpoint.schrodinger.util.Schrodinger;

import org.openqa.selenium.By;

import static com.codeborne.selenide.Selectors.byText;

/**
* Created by Viliam Repan (lazyman).
*/
Expand All @@ -22,13 +26,18 @@ public Search(T parent, SelenideElement parentElement) {
super(parent, parentElement);
}

public Popover<Search<T>> byName() {

public SearchItemField<Search<T>> byName() {
choiceBasicSearch();
SelenideElement nameElement = getItemByName("Name");
SelenideElement nameInput = nameElement.parent().$x(".//input[@" + Schrodinger.DATA_S_ID + "='input']")
.waitUntil(Condition.appears, MidPoint.TIMEOUT_DEFAULT_2_S);
return new SearchItemField(this, nameInput);
}

getParentElement().$x(".//a[@"+Schrodinger.DATA_S_ID+"='mainButton']").waitUntil(Condition.appears, MidPoint.TIMEOUT_DEFAULT_2_S).click();
Selenide.sleep(MidPoint.TIMEOUT_DEFAULT_2_S);
return new Popover<>(this, getDisplayedPopover());
public Search<T> updateSearch(){
getParentElement().$(Schrodinger.byDataId("searchSimple"))
.waitUntil(Condition.appears, MidPoint.TIMEOUT_DEFAULT_2_S).click();
return this;
}

private void choiceBasicSearch() {
Expand Down Expand Up @@ -85,9 +94,9 @@ public Popover<Search<T>> byItem(String name) {
}

private SelenideElement getItemByName(String name) {
ElementsCollection items = getParentElement().findAll(Schrodinger.byDataId("a", "mainButton"));
ElementsCollection items = getParentElement().findAll(By.className("search-item"));
for (SelenideElement item : items) {
if (item.getText().startsWith(name + ":")) {
if (item.$(byText(name)) != null) {
return item;
}
}
Expand All @@ -107,6 +116,8 @@ private SelenideElement getDisplayedPopover() {
return popover;
}



public Search<T> resetBasicSearch() {
choiceBasicSearch();
SelenideElement nameItem = getItemByName("Name");
Expand Down
@@ -0,0 +1,24 @@
package com.evolveum.midpoint.schrodinger.component.common;

import com.codeborne.selenide.Condition;
import com.codeborne.selenide.SelenideElement;

import com.evolveum.midpoint.schrodinger.MidPoint;
import com.evolveum.midpoint.schrodinger.component.Component;
import com.evolveum.midpoint.schrodinger.util.Schrodinger;

public class SearchItemField<T> extends Component<T> {

public SearchItemField(T parent, SelenideElement parentElement) {
super(parent, parentElement);
}

public T inputValue(String input) {
SelenideElement inputField = getParentElement().parent().$x(".//input[@" + Schrodinger.DATA_S_ID + "='input']")
.waitUntil(Condition.appears, MidPoint.TIMEOUT_DEFAULT_2_S);
if(!input.equals(inputField.getValue())) {
inputField.setValue(input);
}
return getParent();
}
}
Expand Up @@ -59,7 +59,7 @@ public static <P extends AssignmentHolderDetailsPage> void addAsignments(Assignm
.updateSearch()
.and()
.selectCheckboxByName(assignment)
.and()
.and()
.clickAdd();
}

Expand Down

0 comments on commit 570032b

Please sign in to comment.