From 3fafa1382cf16fb0c9341ee1300f17b80ac5ae50 Mon Sep 17 00:00:00 2001
From: pkupczyk <pkupczyk>
Date: Mon, 29 May 2017 18:59:23 +0000
Subject: [PATCH] SSDM-5142 : Project Authorization - experiment predicates and
 validators - fix automated tests

SVN: 38228
---
 .../dataaccess/db/ExperimentDAOTest.java      |  4 +--
 .../server/dataaccess/db/GroupDAOTest.java    | 20 ++++++++-----
 .../server/dataaccess/db/PersonDAOTest.java   |  2 +-
 .../server/dataaccess/db/ProjectDAOTest.java  | 30 ++++++++++++-------
 .../GeneralInformationServiceJsonApiTest.java |  8 ++---
 .../api/v1/GeneralInformationServiceTest.java |  4 +--
 6 files changed, 40 insertions(+), 28 deletions(-)

diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java
index 75ae561b200..51e4ff3a373 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java
@@ -151,7 +151,7 @@ public class ExperimentDAOTest extends AbstractDAOTest
         List<ExperimentPE> experiments = daoFactory.getExperimentDAO().listExperiments();
         Collections.sort(experiments);
         assertEqualsOrGreater(7, experiments.size());
-        final ExperimentPE expInDefault = experiments.get(0);
+        final ExperimentPE expInDefault = experiments.get(8);
         assertEquals(CISD_CISD_DEFAULT_EXP_REUSE, expInDefault.getIdentifier());
 
         final ProjectPE projectDefault = expInDefault.getProject();
@@ -201,7 +201,7 @@ public class ExperimentDAOTest extends AbstractDAOTest
         List<ExperimentPE> experiments = daoFactory.getExperimentDAO().listExperiments();
         Collections.sort(experiments);
         assertEqualsOrGreater(7, experiments.size());
-        final ExperimentPE exp = experiments.get(0);
+        final ExperimentPE exp = experiments.get(8);
         assertEquals(CISD_CISD_DEFAULT_EXP_REUSE, exp.getIdentifier());
 
         final SpacePE spaceCisd = exp.getProject().getSpace();
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/GroupDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/GroupDAOTest.java
index dde26a97a87..7b33b7794dd 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/GroupDAOTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/GroupDAOTest.java
@@ -63,10 +63,12 @@ public final class GroupDAOTest extends AbstractDAOTest
     {
         final List<SpacePE> groups = daoFactory.getSpaceDAO().listSpaces();
         Collections.sort(groups);
-        assertEquals("CISD", groups.get(0).getCode());
-        assertEquals("TEST-SPACE", groups.get(1).getCode());
-        assertEquals("TESTGROUP", groups.get(2).getCode());
-        assertEquals(3, groups.size());
+        assertEquals("AUTH-SPACE-1", groups.get(0).getCode());
+        assertEquals("AUTH-SPACE-2", groups.get(1).getCode());
+        assertEquals("CISD", groups.get(2).getCode());
+        assertEquals("TEST-SPACE", groups.get(3).getCode());
+        assertEquals("TESTGROUP", groups.get(4).getCode());
+        assertEquals(5, groups.size());
     }
 
     @Test
@@ -75,10 +77,12 @@ public final class GroupDAOTest extends AbstractDAOTest
         final List<SpacePE> groups =
                 daoFactory.getSpaceDAO().listSpaces();
         Collections.sort(groups);
-        assertEquals("CISD", groups.get(0).getCode());
-        assertEquals("TEST-SPACE", groups.get(1).getCode());
-        assertEquals("TESTGROUP", groups.get(2).getCode());
-        assertEquals(3, groups.size());
+        assertEquals("AUTH-SPACE-1", groups.get(0).getCode());
+        assertEquals("AUTH-SPACE-2", groups.get(1).getCode());
+        assertEquals("CISD", groups.get(2).getCode());
+        assertEquals("TEST-SPACE", groups.get(3).getCode());
+        assertEquals("TESTGROUP", groups.get(4).getCode());
+        assertEquals(5, groups.size());
     }
 
     @Test(groups = "broken")
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/PersonDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/PersonDAOTest.java
index f06362c8d82..6e094f5ade4 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/PersonDAOTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/PersonDAOTest.java
@@ -87,7 +87,7 @@ public final class PersonDAOTest extends AbstractDAOTest
         personDAO.createPerson(testPerson2);
         personDAO.createPerson(testPerson3);
         final List<PersonPE> persons = personDAO.listPersons();
-        assertEquals(20, persons.size());
+        assertEquals(22, persons.size());
         final PersonPE testPersonFromDB = personDAO.getPerson(testPerson.getId());
         assertEquals(testPerson, testPersonFromDB);
         final PersonPE testPersonFromDB2 = personDAO.getPerson(testPerson2.getId());
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ProjectDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ProjectDAOTest.java
index 87e08491ea9..830f0d9fa79 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ProjectDAOTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ProjectDAOTest.java
@@ -44,8 +44,7 @@ import ch.systemsx.cisd.openbis.generic.shared.util.HibernateUtils;
  * 
  * @author Izabela Adamczyk
  */
-@Test(groups =
-{ "db", "project" })
+@Test(groups = { "db", "project" })
 public class ProjectDAOTest extends AbstractDAOTest
 {
 
@@ -65,8 +64,17 @@ public class ProjectDAOTest extends AbstractDAOTest
 
     public static final String PROJECT_TO_DELETE = "PROJECT-TO-DELETE";
 
+    public static final String AUTH_PROJECT_11 = "AUTH-PROJECT-11";
+
+    public static final String AUTH_PROJECT_12 = "AUTH-PROJECT-12";
+
+    public static final String AUTH_PROJECT_21 = "AUTH-PROJECT-21";
+
+    public static final String AUTH_PROJECT_22 = "AUTH-PROJECT-22";
+
     static final String[] PRELOADED_PROJECTS =
-    { DEFAULT, NEMO, NOE, NOE, PROJECT_TO_DELETE, TEST_PROJECT, TESTPROJ };
+            { AUTH_PROJECT_11, AUTH_PROJECT_12, AUTH_PROJECT_21, AUTH_PROJECT_22, DEFAULT, NEMO, NOE, NOE, PROJECT_TO_DELETE, TEST_PROJECT,
+                    TESTPROJ };
 
     @Test
     public void testListProjects()
@@ -85,7 +93,7 @@ public class ProjectDAOTest extends AbstractDAOTest
     {
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
-        final ProjectPE defaultProject = allProjects.get(0);
+        final ProjectPE defaultProject = allProjects.get(4);
         assertEquals(DEFAULT, defaultProject.getCode());
         final List<ProjectPE> groupProjects =
                 daoFactory.getProjectDAO().listProjects(defaultProject.getSpace());
@@ -101,7 +109,7 @@ public class ProjectDAOTest extends AbstractDAOTest
     {
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
-        final ProjectPE testProject = allProjects.get(6);
+        final ProjectPE testProject = allProjects.get(10);
         assertEquals(testProject.getCode(), TESTPROJ);
         final List<ProjectPE> groupProjects =
                 daoFactory.getProjectDAO().listProjects(testProject.getSpace());
@@ -115,7 +123,7 @@ public class ProjectDAOTest extends AbstractDAOTest
     {
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
-        final ProjectPE templateProject = allProjects.get(6);
+        final ProjectPE templateProject = allProjects.get(10);
 
         assertEquals(templateProject.getCode(), TESTPROJ);
 
@@ -130,7 +138,7 @@ public class ProjectDAOTest extends AbstractDAOTest
     {
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
-        final ProjectPE templateProject = allProjects.get(6);
+        final ProjectPE templateProject = allProjects.get(10);
         assertEquals(templateProject.getCode(), TESTPROJ);
 
         AssertJUnit.assertNull(daoFactory.getProjectDAO().tryFindProject(
@@ -146,8 +154,8 @@ public class ProjectDAOTest extends AbstractDAOTest
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
 
-        final ProjectPE noe = allProjects.get(2);
-        final ProjectPE testproj = allProjects.get(6);
+        final ProjectPE noe = allProjects.get(6);
+        final ProjectPE testproj = allProjects.get(10);
 
         assertEquals(noe.getCode(), NOE);
         assertEquals(testproj.getCode(), TESTPROJ);
@@ -168,7 +176,7 @@ public class ProjectDAOTest extends AbstractDAOTest
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
 
-        final ProjectPE noe = allProjects.get(2);
+        final ProjectPE noe = allProjects.get(6);
 
         assertEquals(noe.getCode(), NOE);
 
@@ -198,7 +206,7 @@ public class ProjectDAOTest extends AbstractDAOTest
     {
         final List<ProjectPE> allProjects = daoFactory.getProjectDAO().listProjects();
         Collections.sort(allProjects);
-        final ProjectPE templateProject = allProjects.get(6);
+        final ProjectPE templateProject = allProjects.get(10);
         assertEquals(templateProject.getCode(), TESTPROJ);
         AssertJUnit.assertNull(daoFactory.getProjectDAO().tryFindProject(
                 templateProject.getSpace().getCode(), NONEXISTENT));
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/remoteapitest/api/v1/GeneralInformationServiceJsonApiTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/remoteapitest/api/v1/GeneralInformationServiceJsonApiTest.java
index cb78eca098f..cb167782201 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/remoteapitest/api/v1/GeneralInformationServiceJsonApiTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/remoteapitest/api/v1/GeneralInformationServiceJsonApiTest.java
@@ -149,10 +149,10 @@ public class GeneralInformationServiceJsonApiTest extends RemoteApiTestCase
             });
         checkSpace("CISD", "[/CISD/DEFAULT, /CISD/NEMO, /CISD/NOE]",
                 "[ADMIN(instance), ADMIN(space), ETL_SERVER(instance), ETL_SERVER(space)]",
-                spaces.get(0));
+                spaces.get(2));
         checkSpace("TESTGROUP", "[/TESTGROUP/TESTPROJ]",
-                "[ADMIN(instance), ADMIN(space), ETL_SERVER(instance)]", spaces.get(2));
-        assertEquals(3, spaces.size());
+                "[ADMIN(instance), ADMIN(space), ETL_SERVER(instance)]", spaces.get(4));
+        assertEquals(5, spaces.size());
     }
 
     @Test
@@ -484,7 +484,7 @@ public class GeneralInformationServiceJsonApiTest extends RemoteApiTestCase
         List<Experiment> result =
                 generalInformationService.listExperiments(sessionToken, projects, "SIRNA_HCS");
         assertEquals(true, result.size() > 0);
-        Experiment resultExperiment = result.get(0);
+        Experiment resultExperiment = result.get(8);
         boolean identifierIsOk = "/CISD/DEFAULT/EXP-REUSE".equals(resultExperiment.getIdentifier());
         identifierIsOk |= "/CISD/NEMO/EXP-TEST-2".equals(resultExperiment.getIdentifier());
         identifierIsOk |=
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/api/v1/GeneralInformationServiceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/api/v1/GeneralInformationServiceTest.java
index 583c9d42d56..8a5f346c46b 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/api/v1/GeneralInformationServiceTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/api/v1/GeneralInformationServiceTest.java
@@ -136,7 +136,7 @@ public class GeneralInformationServiceTest extends SystemTestCase
         List<SpaceWithProjectsAndRoleAssignments> spaces =
                 generalInformationService.listSpacesWithProjectsAndRoleAssignments(sessionToken,
                         null);
-        assertEquals(3, spaces.size());
+        assertEquals(5, spaces.size());
         loginAsObserver();
 
         spaces =
@@ -160,7 +160,7 @@ public class GeneralInformationServiceTest extends SystemTestCase
                 }
             });
         assertEquals(
-                "[/CISD/DEFAULT, /CISD/NEMO, /CISD/NOE, /TEST-SPACE/NOE, /TEST-SPACE/PROJECT-TO-DELETE, /TEST-SPACE/TEST-PROJECT, /TESTGROUP/TESTPROJ]",
+                "[/AUTH-SPACE-1/AUTH-PROJECT-11, /AUTH-SPACE-1/AUTH-PROJECT-12, /AUTH-SPACE-2/AUTH-PROJECT-21, /AUTH-SPACE-2/AUTH-PROJECT-22, /CISD/DEFAULT, /CISD/NEMO, /CISD/NOE, /TEST-SPACE/NOE, /TEST-SPACE/PROJECT-TO-DELETE, /TEST-SPACE/TEST-PROJECT, /TESTGROUP/TESTPROJ]",
                 projects.toString());
 
         loginAsObserver();
-- 
GitLab