Skip to content
Snippets Groups Projects
Commit 15de7028 authored by felmer's avatar felmer
Browse files

SSDM-2601: finished rewriting ProjectSampleTest for clean-db suite

SVN: 35026
parent e0edc251
No related branches found
No related tags found
No related merge requests found
...@@ -29,6 +29,7 @@ import java.util.Map; ...@@ -29,6 +29,7 @@ import java.util.Map;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.transaction.AfterTransaction;
import org.springframework.test.context.transaction.TransactionConfiguration; import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -62,7 +63,6 @@ import ch.systemsx.cisd.common.exceptions.UserFailureException; ...@@ -62,7 +63,6 @@ import ch.systemsx.cisd.common.exceptions.UserFailureException;
import ch.systemsx.cisd.common.logging.LogCategory; import ch.systemsx.cisd.common.logging.LogCategory;
import ch.systemsx.cisd.common.logging.LogFactory; import ch.systemsx.cisd.common.logging.LogFactory;
import ch.systemsx.cisd.openbis.generic.server.dataaccess.util.UpdateUtils; import ch.systemsx.cisd.openbis.generic.server.dataaccess.util.UpdateUtils;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Space;
import ch.systemsx.cisd.openbis.systemtest.base.BaseTest; import ch.systemsx.cisd.openbis.systemtest.base.BaseTest;
/** /**
...@@ -74,6 +74,8 @@ import ch.systemsx.cisd.openbis.systemtest.base.BaseTest; ...@@ -74,6 +74,8 @@ import ch.systemsx.cisd.openbis.systemtest.base.BaseTest;
@Test(groups = "project-samples") @Test(groups = "project-samples")
public class ProjectSampleTest extends BaseTest public class ProjectSampleTest extends BaseTest
{ {
private static final String[] SEARCH_METHODS
= {"testSearchForSamplesWithProject", "testSearchForSamplesWithCodeAndWithProject"};
private static final Logger operationLog = LogFactory.getLogger(LogCategory.OPERATION, ProjectSampleTest.class); private static final Logger operationLog = LogFactory.getLogger(LogCategory.OPERATION, ProjectSampleTest.class);
private static final EntityTypePermId ENTITY_TYPE_UNKNOWN = new EntityTypePermId("UNKNOWN"); private static final EntityTypePermId ENTITY_TYPE_UNKNOWN = new EntityTypePermId("UNKNOWN");
private static final String TEST_USER = "test"; private static final String TEST_USER = "test";
...@@ -101,9 +103,8 @@ public class ProjectSampleTest extends BaseTest ...@@ -101,9 +103,8 @@ public class ProjectSampleTest extends BaseTest
private SamplePermId sample2InSpace1; private SamplePermId sample2InSpace1;
@BeforeClass @BeforeClass
public void createSpacesAndProject() public void createData()
{ {
System.err.println("create spaces");
List<SpacePermId> spaces = createSpaces(systemSessionToken, "SPACE1", "SPACE2"); List<SpacePermId> spaces = createSpaces(systemSessionToken, "SPACE1", "SPACE2");
space1 = spaces.get(0); space1 = spaces.get(0);
space2 = spaces.get(1); space2 = spaces.get(1);
...@@ -112,13 +113,6 @@ public class ProjectSampleTest extends BaseTest ...@@ -112,13 +113,6 @@ public class ProjectSampleTest extends BaseTest
project2inSpace1 = projects.get(1); project2inSpace1 = projects.get(1);
project1InSpace2 = createProjects(systemSessionToken, space2, "PROJECT1").get(0); project1InSpace2 = createProjects(systemSessionToken, space2, "PROJECT1").get(0);
project2InSpace2 = createProjects(systemSessionToken, space2, "PROJECT2").get(0); project2InSpace2 = createProjects(systemSessionToken, space2, "PROJECT2").get(0);
}
@BeforeMethod
@Test(enabled = false)
public void createTestEntities()
{
System.err.println("create testentities");
experimentInProject1InSpace1 = createExperiments(systemSessionToken, project1inSpace1, "EXP1").get(0); experimentInProject1InSpace1 = createExperiments(systemSessionToken, project1inSpace1, "EXP1").get(0);
List<SamplePermId> sharedSamples = createSamples(systemSessionToken, null, null, null, "SHARED1", "SHARED2"); List<SamplePermId> sharedSamples = createSamples(systemSessionToken, null, null, null, "SHARED1", "SHARED2");
sharedSample1 = sharedSamples.get(0); sharedSample1 = sharedSamples.get(0);
...@@ -127,18 +121,18 @@ public class ProjectSampleTest extends BaseTest ...@@ -127,18 +121,18 @@ public class ProjectSampleTest extends BaseTest
sample1InSpace1 = spaceSamples.get(0); sample1InSpace1 = spaceSamples.get(0);
sample2InSpace1 = spaceSamples.get(1); sample2InSpace1 = spaceSamples.get(1);
createSamples(systemSessionToken, space1, project1inSpace1, null, "SAMPLE3", "SAMPLE4"); createSamples(systemSessionToken, space1, project1inSpace1, null, "SAMPLE3", "SAMPLE4");
createSamples(systemSessionToken, space2, project2InSpace2, null, "SAMPLE5", "SAMPLE6");
waitAtLeastASecond(); // to allow checks on modification time stamps waitAtLeastASecond(); // to allow checks on modification time stamps
UpdateUtils.waitUntilIndexUpdaterIsIdle(applicationContext, operationLog); UpdateUtils.waitUntilIndexUpdaterIsIdle(applicationContext, operationLog);
System.err.println("Test data created");
} }
@Override @Override
@AfterTransaction
@Test(enabled = false) @Test(enabled = false)
public void cleanDatabase() public void cleanDatabase()
{ {
super.cleanDatabase();
} }
private List<SpacePermId> createSpaces(String sessionToken, String...spaceCodes) private List<SpacePermId> createSpaces(String sessionToken, String...spaceCodes)
{ {
List<SpaceCreation> newSpaces = new ArrayList<SpaceCreation>(); List<SpaceCreation> newSpaces = new ArrayList<SpaceCreation>();
...@@ -479,9 +473,10 @@ public class ProjectSampleTest extends BaseTest ...@@ -479,9 +473,10 @@ public class ProjectSampleTest extends BaseTest
+ "(Context: [verify project for sample SHARED1])"); + "(Context: [verify project for sample SHARED1])");
} }
@Test @Test(priority = -1)
public void testSearchForSamplesWithProject() throws InterruptedException public void testSearchForSamplesWithProject() throws InterruptedException
{ {
SampleSearchCriteria searchCriteria = new SampleSearchCriteria(); SampleSearchCriteria searchCriteria = new SampleSearchCriteria();
searchCriteria.withProject(); searchCriteria.withProject();
SampleFetchOptions fetchOptions = new SampleFetchOptions(); SampleFetchOptions fetchOptions = new SampleFetchOptions();
...@@ -493,10 +488,14 @@ public class ProjectSampleTest extends BaseTest ...@@ -493,10 +488,14 @@ public class ProjectSampleTest extends BaseTest
assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1"); assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1");
assertEquals(result.getObjects().get(1).getIdentifier().getIdentifier(), "/SPACE1/PROJECT1/SAMPLE4"); assertEquals(result.getObjects().get(1).getIdentifier().getIdentifier(), "/SPACE1/PROJECT1/SAMPLE4");
assertEquals(result.getObjects().get(1).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1"); assertEquals(result.getObjects().get(1).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1");
assertEquals(result.getTotalCount(), 2); assertEquals(result.getObjects().get(2).getIdentifier().getIdentifier(), "/SPACE2/PROJECT2/SAMPLE5");
assertEquals(result.getObjects().get(2).getProject().getIdentifier().getIdentifier(), "/SPACE2/PROJECT2");
assertEquals(result.getObjects().get(3).getIdentifier().getIdentifier(), "/SPACE2/PROJECT2/SAMPLE6");
assertEquals(result.getObjects().get(3).getProject().getIdentifier().getIdentifier(), "/SPACE2/PROJECT2");
assertEquals(result.getTotalCount(), 4);
} }
@Test @Test(priority = -1)
public void testSearchForSamplesWithCodeAndWithProject() public void testSearchForSamplesWithCodeAndWithProject()
{ {
SampleSearchCriteria searchCriteria = new SampleSearchCriteria(); SampleSearchCriteria searchCriteria = new SampleSearchCriteria();
...@@ -512,54 +511,58 @@ public class ProjectSampleTest extends BaseTest ...@@ -512,54 +511,58 @@ public class ProjectSampleTest extends BaseTest
assertEquals(result.getTotalCount(), 1); assertEquals(result.getTotalCount(), 1);
} }
/* @Test(priority = -1)
@Test
public void testSearchForSamplesWithProjectWithSpaceWithCode() public void testSearchForSamplesWithProjectWithSpaceWithCode()
{ {
SampleSearchCriteria searchCriteria = new SampleSearchCriteria(); SampleSearchCriteria searchCriteria = new SampleSearchCriteria();
searchCriteria.withProject().withSpace().withCode().thatEquals("CISD"); searchCriteria.withProject().withSpace().withCode().thatEquals("SPACE1");
SampleFetchOptions fetchOptions = new SampleFetchOptions(); SampleFetchOptions fetchOptions = new SampleFetchOptions();
fetchOptions.withProject(); fetchOptions.withProject();
SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions); SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions);
assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/CISD/NEMO/3VCP5"); assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/SPACE1/PROJECT1/SAMPLE3");
assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/CISD/NEMO"); assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1");
assertEquals(result.getTotalCount(), 1); assertEquals(result.getObjects().get(1).getIdentifier().getIdentifier(), "/SPACE1/PROJECT1/SAMPLE4");
assertEquals(result.getObjects().get(1).getProject().getIdentifier().getIdentifier(), "/SPACE1/PROJECT1");
assertEquals(result.getTotalCount(), 2);
} }
@Test @Test(priority = -1)
public void testSearchForSamplesWithProjectWithPermId() public void testSearchForSamplesWithProjectWithPermId()
{ {
SampleSearchCriteria searchCriteria = new SampleSearchCriteria(); SampleSearchCriteria searchCriteria = new SampleSearchCriteria();
searchCriteria.withProject().withPermId().thatContains("1738-103"); searchCriteria.withProject().withPermId().thatEquals(project2InSpace2.getPermId());
SampleFetchOptions fetchOptions = new SampleFetchOptions(); SampleFetchOptions fetchOptions = new SampleFetchOptions();
fetchOptions.withProject(); fetchOptions.withProject();
SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions); SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions);
assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/CISD/NEMO/3VCP5"); assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/SPACE2/PROJECT2/SAMPLE5");
assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/CISD/NEMO"); assertEquals(result.getObjects().get(0).getProject().getIdentifier().getIdentifier(), "/SPACE2/PROJECT2");
assertEquals(result.getTotalCount(), 1); assertEquals(result.getObjects().get(1).getIdentifier().getIdentifier(), "/SPACE2/PROJECT2/SAMPLE6");
assertEquals(result.getObjects().get(1).getProject().getIdentifier().getIdentifier(), "/SPACE2/PROJECT2");
assertEquals(result.getTotalCount(), 2);
} }
@Test @Test(priority = -1)
public void testSearchForSamplesWithoutProjects() public void testSearchForSamplesWithoutProjects()
{ {
SampleSearchCriteria searchCriteria = new SampleSearchCriteria(); SampleSearchCriteria searchCriteria = new SampleSearchCriteria();
searchCriteria.withCode().thatStartsWith("3VCP"); searchCriteria.withCode().thatStartsWith("SAMP");
searchCriteria.withExperiment();
searchCriteria.withoutProject(); searchCriteria.withoutProject();
SampleFetchOptions fetchOptions = new SampleFetchOptions(); SampleFetchOptions fetchOptions = new SampleFetchOptions();
fetchOptions.withProject(); fetchOptions.withProject();
SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions); SearchResult<Sample> result = v3api.searchSamples(systemSessionToken, searchCriteria, fetchOptions);
assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/CISD/3VCP6"); assertEquals(result.getObjects().get(0).getIdentifier().getIdentifier(), "/SPACE1/SAMPLE1");
assertEquals(result.getObjects().get(0).getProject(), null); assertEquals(result.getObjects().get(0).getProject(), null);
assertEquals(result.getTotalCount(), 1); assertEquals(result.getObjects().get(1).getIdentifier().getIdentifier(), "/SPACE1/SAMPLE2");
assertEquals(result.getObjects().get(1).getProject(), null);
assertEquals(result.getTotalCount(), 2);
} }
*/
private void assertUserFailureException(IDelegatedAction action, String expectedExceptionMessage) private void assertUserFailureException(IDelegatedAction action, String expectedExceptionMessage)
{ {
try try
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment