diff --git a/openbis/build/build.xml b/openbis/build/build.xml
index 8ee78ccb18f834aa0bd4ea25eb41355f1a6dcbef..4b750937edc18a1c7d2396ad2de3e1cba2a8cd82 100644
--- a/openbis/build/build.xml
+++ b/openbis/build/build.xml
@@ -327,7 +327,7 @@
   		<report format="noframes" todir="${output.test}" />
   	</junitreport>
   	<fail if="tests.failed" message="At least one test failed." />
-		<!--antcall target="check-restrictions" /-->
+		<antcall target="check-restrictions" />
   </target>
 
 
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToExperimentTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToExperimentTest.java
index 1307e34cceb84c0ebe540df5e34ad40b2e12d21d..9c878ccdc1adee10ae8080e237860b3307107628 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToExperimentTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToExperimentTest.java
@@ -184,15 +184,13 @@ public class AssignDataSetToExperimentTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignDataSetToExperiment", groups = "authorization")
-    public void assigningDataSetToAnotherExperimentIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningDataSetToAnotherExperimentIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         ExternalData dataset = create(aDataSet().inExperiment(sourceExperiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -204,14 +202,12 @@ public class AssignDataSetToExperimentTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignDataSetToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningDataSetToAnotherExperimentIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
+            RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy destinationSpaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         ExternalData dataset = create(aDataSet().inExperiment(sourceExperiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -220,7 +216,7 @@ public class AssignDataSetToExperimentTest extends BaseTest
         perform(anUpdateOf(dataset).toExperiment(destinationExperiment).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -244,7 +240,7 @@ public class AssignDataSetToExperimentTest extends BaseTest
 
     AuthorizationRule assignDataSetToExperimentRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -252,13 +248,9 @@ public class AssignDataSetToExperimentTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignDataSetToExperimentRule =
-                and(
-                        rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                        or(
-                                rule(destination, RoleWithHierarchy.SPACE_POWER_USER),
-                                rule(destination, RoleWithHierarchy.SPACE_ETL_SERVER)
-                        )
-                );
+                and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        or(rule(destination, RoleWithHierarchy.SPACE_POWER_USER),
+                                rule(destination, RoleWithHierarchy.SPACE_ETL_SERVER)));
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToSampleTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToSampleTest.java
index 2d85de0c6d928a05e48c22fd3470bee2b39df0ee..93267bcab1c1a86cbd9b090df29324022bd91f68 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToSampleTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignDataSetToSampleTest.java
@@ -203,15 +203,13 @@ public class AssignDataSetToSampleTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignDataSetToSample", groups = "authorization")
-    public void assigningDataSetToSampleIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningDataSetToSampleIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         ExternalData dataset = create(aDataSet().inSample(sourceSample));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -222,15 +220,13 @@ public class AssignDataSetToSampleTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignDataSetToSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningDataSetToSampleIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningDataSetToSampleIsNotAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         ExternalData dataset = create(aDataSet().inSample(sourceSample));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -239,7 +235,7 @@ public class AssignDataSetToSampleTest extends BaseTest
         perform(anUpdateOf(dataset).toSample(destinationSample).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -265,7 +261,7 @@ public class AssignDataSetToSampleTest extends BaseTest
 
     AuthorizationRule assignDataSetToSampleRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -273,18 +269,15 @@ public class AssignDataSetToSampleTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignDataSetToSampleRule =
-                and(
-                        rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER)
-                );
+                and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER));
     }
 
     @DataProvider
     Object[][] rolesAllowedToAssignDataSetToSample()
     {
         return RolePermutator.getAcceptedPermutations(assignDataSetToSampleRule, source,
-                destination,
-                instance);
+                destination, instance);
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignExperimentToProjectTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignExperimentToProjectTest.java
index e2522c1ce473c7ef27c87c151fe128626f27f950..3f6f98ae2d2d46b846cb3627425834d8a4c4f3b5 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignExperimentToProjectTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignExperimentToProjectTest.java
@@ -78,15 +78,13 @@ public class AssignExperimentToProjectTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignExperimentToProject", groups = "authorization")
-    public void assigningExperimentToProjectIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningExperimentToProjectIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Experiment experiment = create(anExperiment().inProject(sourceProject));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -97,15 +95,13 @@ public class AssignExperimentToProjectTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignExperimentToProject", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningExperimentToProjectIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningExperimentToProjectIsNotAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Experiment experiment = create(anExperiment().inProject(sourceProject));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -114,7 +110,7 @@ public class AssignExperimentToProjectTest extends BaseTest
         perform(anUpdateOf(experiment).toProject(destinationProject).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -135,7 +131,7 @@ public class AssignExperimentToProjectTest extends BaseTest
 
     AuthorizationRule assignExperimentToProjectRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -143,18 +139,12 @@ public class AssignExperimentToProjectTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignExperimentToProjectRule =
-                or(
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                                rule(destination, RoleWithHierarchy.SPACE_POWER_USER)
-                        ),
-
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_USER),
+                or(and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER)),
+
+                        and(rule(source, RoleWithHierarchy.SPACE_USER),
                                 rule(destination, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
 
     }
 
@@ -162,8 +152,7 @@ public class AssignExperimentToProjectTest extends BaseTest
     Object[][] rolesAllowedToAssignExperimentToProject()
     {
         return RolePermutator.getAcceptedPermutations(assignExperimentToProjectRule, source,
-                destination,
-                instance);
+                destination, instance);
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignProjectToSpaceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignProjectToSpaceTest.java
index e44a811afa69e70bdf0d08b7141b62f1791cda26..e2b8cac271d1d36cad644a5ed95a31461467d6d3 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignProjectToSpaceTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignProjectToSpaceTest.java
@@ -74,15 +74,13 @@ public class AssignProjectToSpaceTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignProjectToSpace", groups = "authorization")
-    public void assigningProjectToSpaceIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningProjectToSpaceIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Project project = create(aProject().inSpace(sourceSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -93,15 +91,13 @@ public class AssignProjectToSpaceTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignProjectToSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningProjectToSpaceIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningProjectToSpaceIsNotAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Project project = create(aProject().inSpace(sourceSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -110,7 +106,7 @@ public class AssignProjectToSpaceTest extends BaseTest
         perform(anUpdateOf(project).toSpace(destinationSpace).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -129,7 +125,7 @@ public class AssignProjectToSpaceTest extends BaseTest
 
     AuthorizationRule assignProjectToSpaceRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -137,18 +133,15 @@ public class AssignProjectToSpaceTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignProjectToSpaceRule =
-                and(
-                        rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER)
-                );
+                and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER));
     }
 
     @DataProvider
     Object[][] rolesAllowedToAssignProjectToSpace()
     {
         return RolePermutator.getAcceptedPermutations(assignProjectToSpaceRule, source,
-                destination,
-                instance);
+                destination, instance);
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToExperimentTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToExperimentTest.java
index b477606ad2912bf0a686780e187d4a4d093af879..70a7cb2106eec6a1c756facfcad397e3f4ac402a 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToExperimentTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToExperimentTest.java
@@ -65,8 +65,7 @@ public class AssignSampleToExperimentTest extends BaseTest
     }
 
     @Test
-    public void sampleIsAssignedWithSpaceOfNewExperiment()
-            throws Exception
+    public void sampleIsAssignedWithSpaceOfNewExperiment() throws Exception
     {
         Sample sample = create(aSample().inExperiment(sourceExperiment));
 
@@ -245,8 +244,7 @@ public class AssignSampleToExperimentTest extends BaseTest
 
     @Test(expectedExceptions =
         { UserFailureException.class })
-    public void sharedSampleCanNotBeAssignedToExperimentThroughExperimentUpdate()
-            throws Exception
+    public void sharedSampleCanNotBeAssignedToExperimentThroughExperimentUpdate() throws Exception
     {
         Sample sample = create(aSample());
 
@@ -273,15 +271,13 @@ public class AssignSampleToExperimentTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignSampleToExperiment", groups = "authorization")
-    public void assigningSampleToExperimentIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningSampleToExperimentIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inExperiment(sourceExperiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -292,15 +288,13 @@ public class AssignSampleToExperimentTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignSampleToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningSampleToExperimentIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningSampleToExperimentIsNotAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inExperiment(sourceExperiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -311,13 +305,12 @@ public class AssignSampleToExperimentTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAssignSharedSampleToExperiment", groups = "authorization")
     public void assigningSharedSampleToExperimentIsAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample());
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -328,13 +321,12 @@ public class AssignSampleToExperimentTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignSharedSampleToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningSharedSampleToExperimentIsNotAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample());
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -344,13 +336,12 @@ public class AssignSampleToExperimentTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAssignSampleToExperimentThroughExperimentUpdate", groups = "authorization")
     public void assigningSampleToExperimentThroughExperimentUpdateIsAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inSpace(destinationSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -361,13 +352,12 @@ public class AssignSampleToExperimentTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignSampleToExperimentThroughExperimentUpdate", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningSampleToExperimentThroughExperimentUpdateIsNotAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inSpace(destinationSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -375,7 +365,7 @@ public class AssignSampleToExperimentTest extends BaseTest
         perform(anUpdateOf(destinationExperiment).withSamples(sample).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace().withCode("sourceSpace"));
@@ -385,13 +375,10 @@ public class AssignSampleToExperimentTest extends BaseTest
         destinationProject = create(aProject().inSpace(destinationSpace));
 
         sourceExperiment =
-                create(anExperiment()
-                        .inProject(sourceProject)
-                        .withCode("sourceExperiment"));
+                create(anExperiment().inProject(sourceProject).withCode("sourceExperiment"));
         destinationExperiment =
-                create(anExperiment()
-                        .inProject(destinationProject)
-                        .withCode("destinationExperiment"));
+                create(anExperiment().inProject(destinationProject).withCode(
+                        "destinationExperiment"));
 
         unrelatedAdmin = create(aSpace());
         unrelatedObserver = create(aSpace());
@@ -410,7 +397,7 @@ public class AssignSampleToExperimentTest extends BaseTest
 
     AuthorizationRule assignSharedSampleToExperimentRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -418,41 +405,29 @@ public class AssignSampleToExperimentTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignSampleToExperimentRule =
-                or(
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                                rule(destination, RoleWithHierarchy.SPACE_POWER_USER)),
+                or(and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER)),
 
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_USER),
+                        and(rule(source, RoleWithHierarchy.SPACE_USER),
                                 rule(destination, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
 
         assignSampleToExperimentThroughExperimentUpdateRule =
-                or(
-                        rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                or(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
 
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                        and(rule(source, RoleWithHierarchy.SPACE_USER),
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
 
         assignSharedSampleToExperimentRule =
-                and(
-                        rule(destination, RoleWithHierarchy.SPACE_USER),
-                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                );
+                and(rule(destination, RoleWithHierarchy.SPACE_USER),
+                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER));
     }
 
     @DataProvider
     Object[][] rolesAllowedToAssignSampleToExperiment()
     {
         return RolePermutator.getAcceptedPermutations(assignSampleToExperimentRule, source,
-                destination,
-                instance);
+                destination, instance);
     }
 
     @DataProvider
@@ -466,16 +441,14 @@ public class AssignSampleToExperimentTest extends BaseTest
     Object[][] rolesAllowedToAssignSampleToExperimentThroughExperimentUpdate()
     {
         return RolePermutator.getAcceptedPermutations(
-                assignSampleToExperimentThroughExperimentUpdateRule, source,
-                instance);
+                assignSampleToExperimentThroughExperimentUpdateRule, source, instance);
     }
 
     @DataProvider
     Object[][] rolesNotAllowedToAssignSampleToExperimentThroughExperimentUpdate()
     {
         return RolePermutator.getAcceptedPermutations(
-                not(assignSampleToExperimentThroughExperimentUpdateRule), source,
-                instance);
+                not(assignSampleToExperimentThroughExperimentUpdateRule), source, instance);
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToSpaceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToSpaceTest.java
index 487d4ff6f458f02c2d3e58a37aed6cc78927439f..f0007adab31ba54d44f6ff4a8d42cfdcdec23886 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToSpaceTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/AssignSampleToSpaceTest.java
@@ -89,8 +89,7 @@ public class AssignSampleToSpaceTest extends BaseTest
     }
 
     @Test
-    public void childSampleCanBeAssignedToAnotherSpace()
-            throws Exception
+    public void childSampleCanBeAssignedToAnotherSpace() throws Exception
     {
         Sample parent = create(aSample().inExperiment(experiment));
         Sample child = create(aSample().inExperiment(experiment).withParent(parent));
@@ -188,15 +187,13 @@ public class AssignSampleToSpaceTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToAssignSampleToSpace", groups = "authorization")
-    public void assigningSampleToAnotherSpaceIsAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningSampleToAnotherSpaceIsAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inSpace(sourceSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -207,15 +204,13 @@ public class AssignSampleToSpaceTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignSampleToSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningSampleToAnotherSpaceIsNotAllowedFor(
-            RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningSampleToAnotherSpaceIsNotAllowedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inSpace(sourceSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -225,14 +220,12 @@ public class AssignSampleToSpaceTest extends BaseTest
     }
 
     @Test(dataProvider = "rolesAllowedToAssignSharedSampleToSpace", groups = "authorization")
-    public void assigningSharedSampleToSpaceIsAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
+    public void assigningSharedSampleToSpaceIsAllowedFor(RoleWithHierarchy destinationSpaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         Sample sharedSample = create(aSample());
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -242,14 +235,12 @@ public class AssignSampleToSpaceTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToAssignSharedSampleToSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assigningSharedSampleToSpaceIsNotAllowedFor(
-            RoleWithHierarchy destinationSpaceRole,
+    public void assigningSharedSampleToSpaceIsNotAllowedFor(RoleWithHierarchy destinationSpaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         Sample sharedSample = create(aSample());
         String user =
-                create(aSession()
-                        .withSpaceRole(destinationSpaceRole, destinationSpace)
+                create(aSession().withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -258,8 +249,7 @@ public class AssignSampleToSpaceTest extends BaseTest
     }
 
     @Test
-    public void assigningSampleToSameSpaceIsAllowedToAllSpaceUsers()
-            throws Exception
+    public void assigningSampleToSameSpaceIsAllowedToAllSpaceUsers() throws Exception
     {
         Sample sample = create(aSample().inSpace(sourceSpace));
         String user = create(aSession().withSpaceRole(RoleWithHierarchy.SPACE_USER, sourceSpace));
@@ -269,7 +259,7 @@ public class AssignSampleToSpaceTest extends BaseTest
         assertThat(sample, is(inSpace(sourceSpace)));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -292,7 +282,7 @@ public class AssignSampleToSpaceTest extends BaseTest
 
     AuthorizationRule assignSharedSampleToSpaceRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -300,22 +290,16 @@ public class AssignSampleToSpaceTest extends BaseTest
         destination = new SpaceDomain(instance);
 
         assignSampleToSpaceRule =
-                or(
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                                rule(destination, RoleWithHierarchy.SPACE_POWER_USER)),
+                or(and(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(destination, RoleWithHierarchy.SPACE_POWER_USER)),
 
-                        and(
-                                rule(source, RoleWithHierarchy.SPACE_USER),
+                        and(rule(source, RoleWithHierarchy.SPACE_USER),
                                 rule(destination, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER))
-                );
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
 
         assignSharedSampleToSpaceRule =
-                and(
-                        rule(destination, RoleWithHierarchy.SPACE_USER),
-                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                );
+                and(rule(destination, RoleWithHierarchy.SPACE_USER),
+                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER));
     }
 
     @DataProvider
@@ -335,8 +319,8 @@ public class AssignSampleToSpaceTest extends BaseTest
     @DataProvider
     Object[][] rolesAllowedToAssignSharedSampleToSpace()
     {
-        return RolePermutator.getAcceptedPermutations(assignSharedSampleToSpaceRule,
-                destination, instance);
+        return RolePermutator.getAcceptedPermutations(assignSharedSampleToSpaceRule, destination,
+                instance);
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/RelationshipServiceAuthorizationTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/RelationshipServiceAuthorizationTest.java
index 2760656cbfeedeed4f8990010c1b7fdfc1a76f14..eb92e1f57a5bfb0c9e3a8b4905d8fa845e160c0e 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/RelationshipServiceAuthorizationTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/RelationshipServiceAuthorizationTest.java
@@ -75,7 +75,7 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     ExternalData destinationDataSet;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     public void createFixture() throws Exception
     {
         sourceSpace = create(aSpace());
@@ -100,8 +100,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAssignExperimentToProject", groups = "authorization")
     public void assigningExperimentToProjectIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignExperimentToProject(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -109,49 +109,48 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignExperimentToProject", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningExperimentToProjectIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignExperimentToProject(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAssignProjectToSpace", groups = "authorization")
-    public void assigningProjectToSpaceIsAuthorizedFor(
-            RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningProjectToSpaceIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignProjectToSpace(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesNotAllowedToAssignProjectToSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assignProjectToSpaceIsNotAuthorizedFor(
-            RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assignProjectToSpaceIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignProjectToSpace(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAssignSampleToExperiment", groups = "authorization")
-    public void assigningSampleToExperimentIsAuthorizedFor(
-            RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assigningSampleToExperimentIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignSampleToExperiment(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesNotAllowedToAssignSampleToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void assignSampleToExperimentIsNotAuthorizedFor(
-            RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void assignSampleToExperimentIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignSampleToExperiment(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToUnassignSampleFromExperiment", groups = "authorization")
-    public void unassigningSampleFromExperimentIsAuthorizedFor(
-            RoleWithHierarchy spaceRole,
+    public void unassigningSampleFromExperimentIsAuthorizedFor(RoleWithHierarchy spaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         unassignSampleFromExperiment(spaceRole, instanceRole);
@@ -159,8 +158,7 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToUnassignSampleFromExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void unassigningSampleFromExperimentIsNotAuthorizedFor(
-            RoleWithHierarchy spaceRole,
+    public void unassigningSampleFromExperimentIsNotAuthorizedFor(RoleWithHierarchy spaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         unassignSampleFromExperiment(spaceRole, instanceRole);
@@ -183,8 +181,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAssignSampleToSpace", groups = "authorization")
     public void assigningSampleToSpaceIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignSampleToSpace(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -192,8 +190,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignSampleToSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningSampleToSpaceIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignSampleToSpace(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -215,8 +213,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAssignDataSetToExperiment", groups = "authorization")
     public void assigningDataSetToExperimentIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignDataSetToExperiment(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -224,16 +222,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignDataSetToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningDataSetToExperimentIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignDataSetToExperiment(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAssignDataSetToSample", groups = "authorization")
     public void assigningDataSetToSampleIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignDataSetToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -241,16 +239,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAssignDataSetToExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void assigningDataSetToSampleIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         assignDataSetToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAddParentToSample", groups = "authorization")
     public void addingParentToSampleIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addParentToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -258,16 +256,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAddParentToSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void addingParentToSampleIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addParentToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToRemoveParentFromSample", groups = "authorization")
     public void removingParentFromSampleIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         removeParentFromSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -275,16 +273,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToRemoveParentFromSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void removingParentFromSampleIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         removeParentFromSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAddContainerToSample", groups = "authorization")
     public void addingContainerToSampleIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addContainerToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -292,8 +290,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAddContainerToSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void addingContainerToSampleIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addContainerToSample(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -315,8 +313,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     @Test(dataProvider = "rolesAllowedToAddParentToDataSet", groups = "authorization")
     public void addingParentToDataSetIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addParentToDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -324,16 +322,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAddParentToDataSet", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void addingParentToDataSetIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addParentToDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToRemoveParentFromDataSet", groups = "authorization")
     public void removingParentFromDataSetIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         removeParentFromDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -341,16 +339,16 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToRemoveParentFromDataSet", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void removingParentFromDataSetIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         removeParentFromDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
 
     @Test(dataProvider = "rolesAllowedToAddContainerToDataSet", groups = "authorization")
     public void addingContainerToDataSetIsAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addContainerToDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -358,8 +356,8 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @Test(dataProvider = "rolesNotAllowedToAddContainerToDataSet", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
     public void addingContainerToDataSetIsNotAuthorizedFor(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         addContainerToDataSet(sourceSpaceRole, destinationSpaceRole, instanceRole);
     }
@@ -380,12 +378,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignExperimentToProject(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -396,12 +393,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignProjectToSpace(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -412,12 +408,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignSampleToExperiment(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -427,12 +422,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
                 pe(sourceSample), pe(destinationExperiment));
     }
 
-    void unassignSampleFromExperiment(RoleWithHierarchy spaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    void unassignSampleFromExperiment(RoleWithHierarchy spaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(spaceRole, sourceSpace)
+                create(aSession().withSpaceRole(spaceRole, sourceSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -445,8 +439,7 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
             throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(spaceRole, destinationSpace)
+                create(aSession().withSpaceRole(spaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -456,13 +449,12 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignSampleToSpace(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
 
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -472,12 +464,10 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
                 pe(sourceSample), pe(destinationSpace));
     }
 
-    void shareSample(RoleWithHierarchy spaceRole, RoleWithHierarchy instanceRole)
-            throws Exception
+    void shareSample(RoleWithHierarchy spaceRole, RoleWithHierarchy instanceRole) throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(spaceRole, sourceSpace)
+                create(aSession().withSpaceRole(spaceRole, sourceSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -486,12 +476,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignDataSetToExperiment(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -502,13 +491,12 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void assignDataSetToSample(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
 
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -519,12 +507,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void addParentToSample(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -536,12 +523,11 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void removeParentFromSample(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -552,29 +538,26 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void addContainerToSample(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
         relationshipService.assignSampleToContainer(sessionManager.getSession(session),
-                pe(sourceSample),
-                pe(destinationSample));
+                pe(sourceSample), pe(destinationSample));
 
     }
 
-    void removeContainerFromSample(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    void removeContainerFromSample(RoleWithHierarchy sourceSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -584,30 +567,27 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void addParentToDataSet(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
         relationshipService.addParentToDataSet(sessionManager.getSession(session),
-                pe(sourceDataSet),
-                pe(destinationDataSet));
+                pe(sourceDataSet), pe(destinationDataSet));
 
     }
 
     void removeParentFromDataSet(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -618,20 +598,18 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     }
 
     void addContainerToDataSet(RoleWithHierarchy sourceSpaceRole,
-            RoleWithHierarchy destinationSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+            RoleWithHierarchy destinationSpaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withSpaceRole(destinationSpaceRole, destinationSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
         relationshipService.assignDataSetToContainer(sessionManager.getSession(session),
-                pe(sourceDataSet),
-                pe(destinationDataSet));
+                pe(sourceDataSet), pe(destinationDataSet));
 
     }
 
@@ -639,8 +617,7 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
             RoleWithHierarchy instanceRole) throws Exception
     {
         String session =
-                create(aSession()
-                        .withSpaceRole(sourceSpaceRole, sourceSpace)
+                create(aSession().withSpaceRole(sourceSpaceRole, sourceSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
@@ -655,73 +632,65 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
 
     GuardedDomain destination = new SpaceDomain(instance);
 
-    AuthorizationRule spaceAdminOrSpaceEtlServer =
-            and(
-                    or(
-                            rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                            rule(source, RoleWithHierarchy.SPACE_ETL_SERVER)
-                    ),
-                    or(
-                            rule(destination, RoleWithHierarchy.SPACE_POWER_USER),
-                            rule(destination, RoleWithHierarchy.SPACE_ETL_SERVER)
-                    )
-            );
-
-    AuthorizationRule spaceAdminOrSpaceEtlServerSingle =
-            or(
-                    rule(source, RoleWithHierarchy.SPACE_POWER_USER),
-                    rule(source, RoleWithHierarchy.SPACE_ETL_SERVER)
-            );
+    AuthorizationRule spaceAdminOrSpaceEtlServer = and(
+            or(rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+                    rule(source, RoleWithHierarchy.SPACE_ETL_SERVER)),
+            or(rule(destination, RoleWithHierarchy.SPACE_POWER_USER),
+                    rule(destination, RoleWithHierarchy.SPACE_ETL_SERVER)));
+
+    AuthorizationRule spaceAdminOrSpaceEtlServerSingle = or(
+            rule(source, RoleWithHierarchy.SPACE_POWER_USER),
+            rule(source, RoleWithHierarchy.SPACE_ETL_SERVER));
 
     AuthorizationRule instanceEtlServer = rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER);
 
     @DataProvider(name = "rolesAllowedToAssignExperimentToProject")
     RoleWithHierarchy[][] rolesAllowedToAssignExperimentToProject()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignExperimentToProject")
     RoleWithHierarchy[][] rolesNotAllowedToAssignExperimentToProject()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAssignProjectToSpace")
     RoleWithHierarchy[][] rolesAllowedToAssignProjectToSpace()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignProjectToSpace")
     RoleWithHierarchy[][] rolesNotAllowedToAssignProjectToSpace()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAssignSampleToExperiment")
     RoleWithHierarchy[][] rolesAllowedToAssignSampleToExperiment()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignSampleToExperiment")
     RoleWithHierarchy[][] rolesNotAllowedToAssignSampleToExperiment()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToUnassignSampleFromExperiment")
     RoleWithHierarchy[][] rolesAllowedToUnassignSampleFromExperiment()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle,
-                source, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle, source,
+                instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToUnassignSampleFromExperiment")
@@ -734,29 +703,28 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @DataProvider(name = "rolesAllowedToUnshareSample")
     RoleWithHierarchy[][] rolesAllowedToUnshareSample()
     {
-        return RolePermutator.getAcceptedPermutations(instanceEtlServer,
-                destination, instance);
+        return RolePermutator.getAcceptedPermutations(instanceEtlServer, destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToUnshareSample")
     RoleWithHierarchy[][] rolesNotAllowedToUnshareSample()
     {
-        return RolePermutator.getAcceptedPermutations(not(instanceEtlServer),
-                destination, instance);
+        return RolePermutator
+                .getAcceptedPermutations(not(instanceEtlServer), destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAssignSampleToSpace")
     RoleWithHierarchy[][] rolesAllowedToAssignSampleToSpace()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignSampleToSpace")
     RoleWithHierarchy[][] rolesNotAllowedToAssignSampleToSpace()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToShareSample")
@@ -774,78 +742,78 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @DataProvider(name = "rolesAllowedToAssignDataSetToExperiment")
     RoleWithHierarchy[][] rolesAllowedToAssignDataSetToExperiment()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignDataSetToExperiment")
     RoleWithHierarchy[][] rolesNotAllowedToAssignDataSetToExperiment()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAssignDataSetToSample")
     RoleWithHierarchy[][] rolesAllowedToAssignDataSetToSample()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAssignDataSetToSample")
     RoleWithHierarchy[][] rolesNotAllowedToAssignDataSetToSample()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAddParentToSample")
     RoleWithHierarchy[][] rolesAllowedToAddParentToSample()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAddParentToSample")
     RoleWithHierarchy[][] rolesNotAllowedToAddParentToSample()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedRemoveParentFromSample")
     RoleWithHierarchy[][] rolesAllowedToRemoveParentFromSample()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToRemoveParentFromSample")
     RoleWithHierarchy[][] rolesNotAllowedToRemoveParentFromSample()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAddContainerToSample")
     RoleWithHierarchy[][] rolesAllowedToAddContainerToSample()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAddContainerToSample")
     RoleWithHierarchy[][] rolesNotAllowedToAddContainerToSample()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedRemoveContainerFromSample")
     RoleWithHierarchy[][] rolesAllowedToRemoveContainerFromSample()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle,
-                source, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle, source,
+                instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToRemoveContainerFromSample")
@@ -858,50 +826,50 @@ public class RelationshipServiceAuthorizationTest extends BaseTest
     @DataProvider(name = "rolesAllowedToAddParentToDataSet")
     RoleWithHierarchy[][] rolesAllowedToAddParentToDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAddParentToDataSet")
     RoleWithHierarchy[][] rolesNotAllowedToAddParentToDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedRemoveParentFromDataSet")
     RoleWithHierarchy[][] rolesAllowedToRemoveParentFromDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToRemoveParentFromDataSet")
     RoleWithHierarchy[][] rolesNotAllowedToRemoveParentFromDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedToAddContainerToDataSet")
     RoleWithHierarchy[][] rolesAllowedToAddContainerToDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer,
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServer, source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToAddContainerToDataSet")
     RoleWithHierarchy[][] rolesNotAllowedToAddContainerToDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer),
-                source, destination, instance);
+        return RolePermutator.getAcceptedPermutations(not(spaceAdminOrSpaceEtlServer), source,
+                destination, instance);
     }
 
     @DataProvider(name = "rolesAllowedRemoveContainerFromDataSet")
     RoleWithHierarchy[][] rolesAllowedToRemoveContainerFromDataSet()
     {
-        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle,
-                source, instance);
+        return RolePermutator.getAcceptedPermutations(spaceAdminOrSpaceEtlServerSingle, source,
+                instance);
     }
 
     @DataProvider(name = "rolesNotAllowedToRemoveContainerFromDataSet")
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromExperimentTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromExperimentTest.java
index 0e53fe126e31c7808f5441732da0e66041161254..b536576058649f184ce9bfa6fc1c894924f7cda6 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromExperimentTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromExperimentTest.java
@@ -46,8 +46,7 @@ public class UnassignSampleFromExperimentTest extends BaseTest
     Space space;
 
     @Test
-    public void experimentAssignmentOfSampleIsRemoved()
-            throws Exception
+    public void experimentAssignmentOfSampleIsRemoved() throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
 
@@ -68,8 +67,7 @@ public class UnassignSampleFromExperimentTest extends BaseTest
 
     @Test(expectedExceptions =
         { UserFailureException.class })
-    public void unassigningFailsIfTheSampleHasDataSets()
-            throws Exception
+    public void unassigningFailsIfTheSampleHasDataSets() throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
 
@@ -187,15 +185,12 @@ public class UnassignSampleFromExperimentTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToUnassignSampleFromExperiment", groups = "authorization")
-    public void unassigningIsAllowedFor(
-            RoleWithHierarchy spaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void unassigningIsAllowedFor(RoleWithHierarchy spaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(spaceRole, space)
-                        .withInstanceRole(instanceRole)
+                create(aSession().withSpaceRole(spaceRole, space).withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
@@ -204,22 +199,19 @@ public class UnassignSampleFromExperimentTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToUnassignSampleFromExperiment", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void unassigningIsNotAllowedFor(
-            RoleWithHierarchy spaceRole,
+    public void unassigningIsNotAllowedFor(RoleWithHierarchy spaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(spaceRole, space)
-                        .withInstanceRole(instanceRole)
+                create(aSession().withSpaceRole(spaceRole, space).withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
         perform(anUpdateOf(sample).removingExperiment().as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         space = create(aSpace());
@@ -237,21 +229,17 @@ public class UnassignSampleFromExperimentTest extends BaseTest
 
     AuthorizationRule unassignSampleFromExperimentRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
         spaceDomain = new SpaceDomain(instance);
 
         unassignSampleFromExperimentRule =
-                or(
-                        rule(spaceDomain, RoleWithHierarchy.SPACE_POWER_USER),
-
-                        and(
-                                rule(spaceDomain, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                or(rule(spaceDomain, RoleWithHierarchy.SPACE_POWER_USER),
+
+                        and(rule(spaceDomain, RoleWithHierarchy.SPACE_USER),
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromSpaceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromSpaceTest.java
index 87a0faad4141f5eae5d50ac42e5ab7a105f718b3..8a72af8918badcfe114c514919cb4dadebc056b0 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromSpaceTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UnassignSampleFromSpaceTest.java
@@ -185,15 +185,12 @@ public class UnassignSampleFromSpaceTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToUnassignSampleFromSpace", groups = "authorization")
-    public void unassigningIsAllowedFor(
-            RoleWithHierarchy spaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void unassigningIsAllowedFor(RoleWithHierarchy spaceRole, RoleWithHierarchy instanceRole)
+            throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(spaceRole, space)
-                        .withInstanceRole(instanceRole)
+                create(aSession().withSpaceRole(spaceRole, space).withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
@@ -202,22 +199,19 @@ public class UnassignSampleFromSpaceTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToUnassignSampleFromSpace", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void unassigningIsNotAllowedFor(
-            RoleWithHierarchy spaceRole,
+    public void unassigningIsNotAllowedFor(RoleWithHierarchy spaceRole,
             RoleWithHierarchy instanceRole) throws Exception
     {
         Sample sample = create(aSample().inExperiment(experiment));
         String user =
-                create(aSession()
-                        .withSpaceRole(spaceRole, space)
-                        .withInstanceRole(instanceRole)
+                create(aSession().withSpaceRole(spaceRole, space).withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
                         .withSpaceRole(RoleWithHierarchy.SPACE_OBSERVER, unrelatedObserver));
 
         perform(anUpdateOf(sample).removingSpace().as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         space = create(aSpace());
@@ -235,17 +229,15 @@ public class UnassignSampleFromSpaceTest extends BaseTest
 
     AuthorizationRule unassignSampleFromSpaceRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
         spaceDomain = new SpaceDomain(instance);
 
         unassignSampleFromSpaceRule =
-                and(
-                        rule(spaceDomain, RoleWithHierarchy.SPACE_USER),
-                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                );
+                and(rule(spaceDomain, RoleWithHierarchy.SPACE_USER),
+                        rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER));
     }
 
     @DataProvider
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetContainmentTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetContainmentTest.java
index 229b54b845d0f222321dd6f234b4740479a19a30..0ffd7aaa38c3214b636842065327b85cc6c15df7 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetContainmentTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetContainmentTest.java
@@ -264,7 +264,7 @@ public class UpdateDataSetContainmentTest extends BaseTest
         perform(anUpdateOf(container).withComponents().as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         Space space = create(aSpace());
@@ -283,7 +283,7 @@ public class UpdateDataSetContainmentTest extends BaseTest
 
     AuthorizationRule addParentToSampleRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetParentsTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetParentsTest.java
index 03928153a9c6068d7a5bf39dc692447652bea1a5..1c4102ff04cf0f18671927c22a49c8da83690a66 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetParentsTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateDataSetParentsTest.java
@@ -219,7 +219,7 @@ public class UpdateDataSetParentsTest extends BaseTest
         perform(anUpdateOf(child).withParent(parent1).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         Space space = create(aSpace());
@@ -252,7 +252,7 @@ public class UpdateDataSetParentsTest extends BaseTest
 
     AuthorizationRule removeParentFromDataSetRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleContainmentTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleContainmentTest.java
index edfc5ff308469360d3ce62545f6e926f54829326..45766938eb8f35b14817e2422d38f90138a8f8af 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleContainmentTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleContainmentTest.java
@@ -140,16 +140,13 @@ public class UpdateSampleContainmentTest extends BaseTest
     Space unrelatedNone;
 
     @Test(dataProvider = "rolesAllowedToSetContainerToSample", groups = "authorization")
-    public void settingContainerToSampleIsAllowedFor(
-            RoleWithHierarchy containerSpaceRole,
-            RoleWithHierarchy componentSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void settingContainerToSampleIsAllowedFor(RoleWithHierarchy containerSpaceRole,
+            RoleWithHierarchy componentSpaceRole, RoleWithHierarchy instanceRole) throws Exception
     {
         Sample container = create(aSample().inSpace(containerSpace));
         Sample componentCandidate = create(aSample().inSpace(componentSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(containerSpaceRole, containerSpace)
+                create(aSession().withSpaceRole(containerSpaceRole, containerSpace)
                         .withSpaceRole(componentSpaceRole, componentSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -160,16 +157,13 @@ public class UpdateSampleContainmentTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToSetContainerToSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void settingContainerToSampleIsNotAllowedFor(
-            RoleWithHierarchy containerSpaceRole,
-            RoleWithHierarchy componentSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void settingContainerToSampleIsNotAllowedFor(RoleWithHierarchy containerSpaceRole,
+            RoleWithHierarchy componentSpaceRole, RoleWithHierarchy instanceRole) throws Exception
     {
         Sample container = create(aSample().inSpace(containerSpace));
         Sample componentCandidate = create(aSample().inSpace(componentSpace));
         String user =
-                create(aSession()
-                        .withSpaceRole(containerSpaceRole, containerSpace)
+                create(aSession().withSpaceRole(containerSpaceRole, containerSpace)
                         .withSpaceRole(componentSpaceRole, componentSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -179,16 +173,13 @@ public class UpdateSampleContainmentTest extends BaseTest
     }
 
     @Test(dataProvider = "rolesAllowedToRemoveContainerFromSample", groups = "authorization")
-    public void removingContainerFromSampleIsAllowedFor(
-            RoleWithHierarchy containerSpaceRole,
-            RoleWithHierarchy componentSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void removingContainerFromSampleIsAllowedFor(RoleWithHierarchy containerSpaceRole,
+            RoleWithHierarchy componentSpaceRole, RoleWithHierarchy instanceRole) throws Exception
     {
         Sample container = create(aSample().inSpace(containerSpace));
         Sample component = create(aSample().inSpace(componentSpace).inContainer(container));
         String user =
-                create(aSession()
-                        .withSpaceRole(containerSpaceRole, containerSpace)
+                create(aSession().withSpaceRole(containerSpaceRole, containerSpace)
                         .withSpaceRole(componentSpaceRole, componentSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -199,16 +190,13 @@ public class UpdateSampleContainmentTest extends BaseTest
 
     @Test(dataProvider = "rolesNotAllowedToRemoveContainerFromSample", expectedExceptions =
         { AuthorizationFailureException.class }, groups = "authorization")
-    public void removingContainerFromSampleIsNotAllowedFor(
-            RoleWithHierarchy containerSpaceRole,
-            RoleWithHierarchy componentSpaceRole,
-            RoleWithHierarchy instanceRole) throws Exception
+    public void removingContainerFromSampleIsNotAllowedFor(RoleWithHierarchy containerSpaceRole,
+            RoleWithHierarchy componentSpaceRole, RoleWithHierarchy instanceRole) throws Exception
     {
         Sample container = create(aSample().inSpace(containerSpace));
         Sample component = create(aSample().inSpace(componentSpace).inContainer(container));
         String user =
-                create(aSession()
-                        .withSpaceRole(containerSpaceRole, containerSpace)
+                create(aSession().withSpaceRole(containerSpaceRole, containerSpace)
                         .withSpaceRole(componentSpaceRole, componentSpace)
                         .withInstanceRole(instanceRole)
                         .withSpaceRole(RoleWithHierarchy.SPACE_ADMIN, unrelatedAdmin)
@@ -217,7 +205,7 @@ public class UpdateSampleContainmentTest extends BaseTest
         perform(anUpdateOf(component).removingContainer().as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         space = create(aSpace());
@@ -238,7 +226,7 @@ public class UpdateSampleContainmentTest extends BaseTest
 
     AuthorizationRule removeContainerFromSampleRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
@@ -246,62 +234,46 @@ public class UpdateSampleContainmentTest extends BaseTest
         componentDomain = new SpaceDomain(instance);
 
         setContainerToSampleRule =
-                or(
-                        and(
-                                or(
-                                        rule(containerDomain, RoleWithHierarchy.SPACE_POWER_USER),
-                                        rule(containerDomain, RoleWithHierarchy.SPACE_ETL_SERVER)
-                                ),
-                                rule(componentDomain, RoleWithHierarchy.SPACE_POWER_USER)
-
-                        ),
-                        and(
-                                rule(componentDomain, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                or(and(or(rule(containerDomain, RoleWithHierarchy.SPACE_POWER_USER),
+                        rule(containerDomain, RoleWithHierarchy.SPACE_ETL_SERVER)),
+                        rule(componentDomain, RoleWithHierarchy.SPACE_POWER_USER)
+
+                ),
+                        and(rule(componentDomain, RoleWithHierarchy.SPACE_USER),
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
 
         removeContainerFromSampleRule =
-                or(
-                        rule(componentDomain, RoleWithHierarchy.SPACE_POWER_USER),
-
-                        and(
-                                rule(componentDomain, RoleWithHierarchy.SPACE_USER),
-                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)
-                        )
-                );
+                or(rule(componentDomain, RoleWithHierarchy.SPACE_POWER_USER),
+
+                        and(rule(componentDomain, RoleWithHierarchy.SPACE_USER),
+                                rule(instance, RoleWithHierarchy.INSTANCE_ETL_SERVER)));
     }
 
     @DataProvider
     Object[][] rolesAllowedToSetContainerToSample()
     {
         return RolePermutator.getAcceptedPermutations(setContainerToSampleRule, containerDomain,
-                componentDomain,
-                instance);
+                componentDomain, instance);
     }
 
     @DataProvider
     Object[][] rolesNotAllowedToSetContainerToSample()
     {
         return RolePermutator.getAcceptedPermutations(not(setContainerToSampleRule),
-                containerDomain,
-                componentDomain, instance);
+                containerDomain, componentDomain, instance);
     }
 
     @DataProvider
     Object[][] rolesAllowedToRemoveContainerFromSample()
     {
         return RolePermutator.getAcceptedPermutations(removeContainerFromSampleRule,
-                containerDomain,
-                componentDomain,
-                instance);
+                containerDomain, componentDomain, instance);
     }
 
     @DataProvider
     Object[][] rolesNotAllowedToRemoveContainerFromSample()
     {
         return RolePermutator.getAcceptedPermutations(not(removeContainerFromSampleRule),
-                containerDomain,
-                componentDomain, instance);
+                containerDomain, componentDomain, instance);
     }
 }
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleParentsTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleParentsTest.java
index 0002b44b198c14b7e426112e938590750d0a3f40..8877654dbdd56ca8c9d3d691df3db1e000162776 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleParentsTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/UpdateSampleParentsTest.java
@@ -241,7 +241,7 @@ public class UpdateSampleParentsTest extends BaseTest
         perform(anUpdateOf(child).toHaveParent(parent1).as(user));
     }
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createFixture() throws Exception
     {
         space = create(aSpace());
@@ -257,7 +257,7 @@ public class UpdateSampleParentsTest extends BaseTest
 
     AuthorizationRule addParentToSampleRule;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     void createAuthorizationRules()
     {
         instance = new InstanceDomain();
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/authorization/ETLServiceAuthorizationTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/authorization/ETLServiceAuthorizationTest.java
index 17cc141af97c4eda9baae4c6aad58ef7a1ba7748..495e19ee2bcb75c6eb4e4dfcdac453a5f0e5350e 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/authorization/ETLServiceAuthorizationTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/authorization/ETLServiceAuthorizationTest.java
@@ -67,7 +67,7 @@ public class ETLServiceAuthorizationTest extends BaseTest
 
     private Project anotherProject;
 
-    @BeforeClass
+    @BeforeClass(dependsOnMethods = "loginAsSystem")
     public void createSomeEntities()
     {
         space = create(aSpace());
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/base/BaseTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/base/BaseTest.java
index 96a60bff0c678c5697b46972e1a9034ab5bcbf18..440465d72400442daf79b9ca8897ce9400dc4876 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/base/BaseTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/base/BaseTest.java
@@ -120,17 +120,16 @@ public abstract class BaseTest extends AbstractTransactionalTestNGSpringContextT
 
     protected String systemSessionToken;
 
-    @BeforeTest(groups =
-        { "system-cleandb" })
-    public void initializeLog()
+    @BeforeTest(groups = "system-cleandb")
+    public void initializeLog() throws Exception
     {
         LogInitializer.init();
+        initializeProperties();
+        setContext();
+        createDataStore();
     }
 
-    @BeforeTest(groups =
-        { "system-cleandb" }, dependsOnMethods =
-        { "initializeLog" })
-    public void initializeProperties()
+    private void initializeProperties()
     {
         System.setProperty("database.create-from-scratch", "true");
         System.setProperty("database.kind", "test");
@@ -140,18 +139,12 @@ public abstract class BaseTest extends AbstractTransactionalTestNGSpringContextT
         System.setProperty("hibernate.search.worker.execution", "sync");
     }
 
-    @BeforeTest(groups =
-        { "system-cleandb" }, dependsOnMethods =
-        { "initializeProperties" })
-    public void setContext() throws Exception
+    private void setContext() throws Exception
     {
         super.springTestContextPrepareTestInstance();
     }
 
-    @BeforeTest(groups =
-        { "system-cleandb" }, dependsOnMethods =
-        { "setContext" })
-    public void createDataStore()
+    private void createDataStore()
     {
         DataStorePE dataStore = new DataStorePE();
         dataStore.setCode("STANDARD");
@@ -164,14 +157,13 @@ public abstract class BaseTest extends AbstractTransactionalTestNGSpringContextT
         this.daoFactory.getDataStoreDAO().createOrUpdateDataStore(dataStore);
     }
 
-    @AfterTest(groups =
-        { "system-cleandb" })
+    @AfterTest(groups = "system-cleandb")
     public void testingThis()
     {
         ((GenericApplicationContext) applicationContext).destroy();
     }
 
-    @BeforeClass(alwaysRun = true)
+    @BeforeClass(alwaysRun = true, dependsOnMethods = "springTestContextPrepareTestInstance")
     public void loginAsSystem()
     {
         systemSessionToken = commonServer.tryToAuthenticateAsSystem().getSessionToken();