Skip to content

Commit

Permalink
schrodinger: further labs tests fixing
Browse files Browse the repository at this point in the history
  • Loading branch information
KaterynaHonchar committed Dec 9, 2020
1 parent 71e0879 commit a420ef3
Show file tree
Hide file tree
Showing 8 changed files with 102 additions and 11 deletions.
Expand Up @@ -62,9 +62,14 @@ public class AbstractLabTest extends AbstractSchrodingerTest {
protected static final File HR_SOURCE_FILE_10_2_PART3 = new File(LAB_SOURCES_DIRECTORY + "source-10-2-part3.csv");
protected static final File HR_SOURCE_FILE_11_1 = new File(LAB_SOURCES_DIRECTORY + "source-11-1.csv");
protected static final File KIRK_USER_FILE = new File("./src/test/resources/labs/objects/users/kirk-user.xml");
protected static final File KIRK_USER_10_FILE = new File("./src/test/resources/labs/objects/users/kirk-user-10.xml");
protected static final File ARCHETYPE_EMPLOYEE_FILE = new File(LAB_OBJECTS_DIRECTORY + "archetypes/archetype-employee.xml");
protected static final File INTERNAL_EMPLOYEE_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-internal-employee.xml");
protected static final File SYSTEM_CONFIGURATION_FILE_5_7 = new File(LAB_OBJECTS_DIRECTORY + "systemConfiguration/system-configuration-5-7.xml");
protected static final File CSV_2_RESOURCE_FILE_5_5 = new File(LAB_OBJECTS_DIRECTORY + "resources/localhost-csvfile-2-canteen-5-5.xml");
protected static final File SECRET_I_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-secret-i.xml");
protected static final File SECRET_II_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-secret-ii.xml");
protected static final File HR_SYNCHRONIZATION_TASK_FILE = new File(LAB_OBJECTS_DIRECTORY + "tasks/task-opendj-livesync-full.xml");

protected static final String DIRECTORY_CURRENT_TEST = "labTests";
protected static final String EXTENSION_SCHEMA_NAME = "extension-example.xsd";
Expand Down
Expand Up @@ -30,6 +30,8 @@

import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;

/**
* @author skublik
Expand All @@ -49,11 +51,38 @@ public void beforeClass() throws IOException {
super.beforeClass();
}

@Override
protected List<File> getObjectListToImport(){
return Arrays.asList(KIRK_USER_10_FILE);
}

@Test(groups={"M10"})
public void mod10test01SimpleObjectTemplate() throws IOException {
importObject(NUMERIC_PIN_FIRST_NONZERO_POLICY_FILE, true);
csv1TargetFile = new File(getTestTargetDir(), CSV_1_FILE_SOURCE_NAME);

importObject(CSV_1_RESOURCE_FILE, true);
changeResourceAttribute(CSV_1_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv1TargetFile.getAbsolutePath(), true);

hrTargetFile = new File(getTestTargetDir(), HR_FILE_SOURCE_NAME);
FileUtils.copyFile(HR_SOURCE_FILE, hrTargetFile);
importObject(HR_NO_EXTENSION_RESOURCE_FILE, true);
changeResourceAttribute(HR_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, hrTargetFile.getAbsolutePath(), true);

addObjectFromFile(HR_SYNCHRONIZATION_TASK_FILE);
Selenide.sleep(MidPoint.TIMEOUT_DEFAULT_2_S);

addObjectFromFile(OBJECT_TEMPLATE_USER_SIMPLE_FILE);
Selenide.sleep(MidPoint.TIMEOUT_DEFAULT_2_S);

basicPage.listResources()
.table()
.clickByName(HR_RESOURCE_NAME)
.clickAccountsTab()
.clickSearchInResource()
.table()
.selectCheckboxByName("001212")
.clickImport();
((PrismFormWithActionButtons<ObjectPolicyTab>)basicPage.objectPolicy()
.clickAddObjectPolicy()
.selectOption("type", "User")
Expand All @@ -77,7 +106,6 @@ public void mod10test01SimpleObjectTemplate() throws IOException {
.form()
.compareInputAttributeValue("fullName", "John Smith"));

showTask("HR Synchronization").clickResume();

FileUtils.copyFile(HR_SOURCE_FILE_10_1, hrTargetFile);
Selenide.sleep(MidPoint.TIMEOUT_MEDIUM_6_S);
Expand Down
Expand Up @@ -52,11 +52,8 @@ public class M5AccountsAssignmentsAndRoles extends AbstractLabTest {
private static final Logger LOG = LoggerFactory.getLogger(M5AccountsAssignmentsAndRoles.class);

private static final File INCOGNITO_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-incognito.xml");
private static final File SECRET_I_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-secret-i.xml");
private static final File SECRET_II_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-secret-ii.xml");
private static final File TOP_SECRET_I_ROLE_FILE = new File(LAB_OBJECTS_DIRECTORY + "roles/role-top-secret-i.xml");
private static final File CSV_1_RESOURCE_FILE_5_5 = new File(LAB_OBJECTS_DIRECTORY + "resources/localhost-csvfile-1-document-access-5-5.xml");
private static final File CSV_2_RESOURCE_FILE_5_5 = new File(LAB_OBJECTS_DIRECTORY + "resources/localhost-csvfile-2-canteen-5-5.xml");
private static final File CSV_3_RESOURCE_FILE_5_5 = new File(LAB_OBJECTS_DIRECTORY + "resources/localhost-csvfile-3-ldap-5-5.xml");
private static final String ARCHETYPE_EMPLOYEE_NAME = "Employee";
private static final String ARCHETYPE_EMPLOYEE_LABEL = "Employee";
Expand Down
Expand Up @@ -58,22 +58,23 @@ protected List<File> getObjectListToImport(){

@Test(groups={"M6"})
public void mod06test01UsingAccountIntentsForProvisioning() {
importObject(CSV_1_RESOURCE_FILE, true);
changeResourceAttribute(CSV_1_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv1TargetFile.getAbsolutePath(), true);
importObject(CSV_2_RESOURCE_FILE, true);
changeResourceAttribute(CSV_2_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv2TargetFile.getAbsolutePath(), true);
importObject(CSV_3_RESOURCE_FILE, true);
changeResourceAttribute(CSV_3_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv3TargetFile.getAbsolutePath(), true);
importObject(NUMERIC_PIN_FIRST_NONZERO_POLICY_FILE, true);

importObject(CSV_1_RESOURCE_FILE_6_1, true);
changeResourceAttribute(CSV_1_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv1TargetFile.getAbsolutePath(), true);

importObject(CSV_2_RESOURCE_FILE_5_5, true);
changeResourceAttribute(CSV_2_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv2TargetFile.getAbsolutePath(), true);

importObject(CSV_3_RESOURCE_FILE_6_1, true);
changeResourceAttribute(CSV_3_RESOURCE_NAME, ScenariosCommons.CSV_RESOURCE_ATTR_FILE_PATH, csv3TargetFile.getAbsolutePath(), true);

addObjectFromFile(SECRET_I_ROLE_FILE);
addObjectFromFile(SECRET_II_ROLE_FILE);
addObjectFromFile(CSV1_TESTER_ROLE_FILE);
addObjectFromFile(CSV3_ADMIN_ROLE_FILE);

Utils.addAsignments(showUser("kirk").selectTabAssignments(), "Secret Projects I", "Secret Projects II");
Utils.addAsignments(showUser("kirk").selectTabAssignments(), CSV1_TESTER_ROLE_NAME, CSV3_ADMIN_ROLE_NAME);

AbstractTableWithPrismView<ProjectionsTab<UserPage>> table = showUser("kirk").selectTabProjections()
Expand Down
Expand Up @@ -61,7 +61,6 @@ public void mod07test01RunningImportFromResource() throws IOException {
.clickByName(HR_RESOURCE_NAME)
.clickAccountsTab()
.clickSearchInResource();
Selenide.sleep(MidPoint.TIMEOUT_DEFAULT_2_S);
accountTab.table()
.selectCheckboxByName("001212")
.clickImport()
Expand Down
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ 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.
-->

<!--Reconciliation task definition for dummy resource -->

<task oid="10335c7c-8322-11e8-33a6-4b1dd0ab58e4"
xmlns="http://midpoint.evolveum.com/xml/ns/public/common/common-3"
xmlns:ext="http://midpoint.evolveum.com/xml/ns/public/provisioning/liveSync-3"
xmlns:syncext="http://midpoint.evolveum.com/xml/ns/public/model/extension-3"
xmlns:ri="http://midpoint.evolveum.com/xml/ns/public/resource/instance-3">

<name>HR Synchronization</name>

<extension>
<syncext:objectclass>ri:AccountObjectClass</syncext:objectclass>
</extension>
<handlerUri>http://midpoint.evolveum.com/xml/ns/public/model/synchronization/task/live-sync/handler-3</handlerUri>

<taskIdentifier>10335c7c-8322-11e8-33a6-4b1dd0ab58e4</taskIdentifier>
<ownerRef oid="00000000-0000-0000-0000-000000000002"/>
<executionStatus>runnable</executionStatus>
<objectRef oid="10000000-9999-9999-0000-a000ff000001" type="ResourceType"/>
<recurrence>recurring</recurrence>
<binding>tight</binding>
<schedule>
<interval>5</interval>
</schedule>

</task>
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ 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.
-->
<user xmlns="http://midpoint.evolveum.com/xml/ns/public/common/common-3"
xmlns:t="http://prism.evolveum.com/xml/ns/public/types-3"
oid="ca233e9a-f474-1ed7-9a22-1nkdea34bb50">
<name>kirk</name>
<givenName>Jim Tiberius</givenName>
<familyName>Kirk</familyName>
<credentials>
<password>
<value>
<t:clearValue>abc123</t:clearValue>
</value>
</password>
</credentials>

<activation>
<administrativeStatus>enabled</administrativeStatus>
</activation>
</user>
Expand Up @@ -8,6 +8,7 @@

import com.codeborne.selenide.Condition;
import com.codeborne.selenide.ElementsCollection;
import com.codeborne.selenide.Selenide;
import com.codeborne.selenide.SelenideElement;
import com.evolveum.midpoint.schrodinger.MidPoint;
import com.evolveum.midpoint.schrodinger.component.Component;
Expand Down Expand Up @@ -80,6 +81,7 @@ public ResourceAccountsTab<T> clickSearchInResource() {
.waitUntil(Condition.visible, MidPoint.TIMEOUT_DEFAULT_2_S).click();
$(Schrodinger.byDataId("a", "resourceSearch"))
.waitUntil(Condition.cssClass("active"), MidPoint.TIMEOUT_MEDIUM_6_S);
Selenide.sleep(MidPoint.TIMEOUT_DEFAULT_2_S);
return this;
}

Expand Down

0 comments on commit a420ef3

Please sign in to comment.