Skip to content
Snippets Groups Projects
Commit 6fecde91 authored by vkovtun's avatar vkovtun
Browse files

SSDM-8226 Made tests SearchSampleTest.testSearchWithModifier...() pass.

parent 4796062d
No related branches found
No related tags found
No related merge requests found
...@@ -18,9 +18,11 @@ package ch.ethz.sis.openbis.generic.server.asapi.v3.search.planner; ...@@ -18,9 +18,11 @@ package ch.ethz.sis.openbis.generic.server.asapi.v3.search.planner;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.fetchoptions.SortOptions; import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.fetchoptions.SortOptions;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.search.AbstractCompositeSearchCriteria; import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.search.AbstractCompositeSearchCriteria;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.search.ISearchCriteria;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.search.PermIdSearchCriteria; import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.search.PermIdSearchCriteria;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.material.Material; import ch.ethz.sis.openbis.generic.asapi.v3.dto.material.Material;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.material.search.MaterialSearchCriteria; import ch.ethz.sis.openbis.generic.asapi.v3.dto.material.search.MaterialSearchCriteria;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.person.search.ModifierSearchCriteria;
import ch.ethz.sis.openbis.generic.asapi.v3.dto.sample.search.SampleParentsSearchCriteria; import ch.ethz.sis.openbis.generic.asapi.v3.dto.sample.search.SampleParentsSearchCriteria;
import ch.ethz.sis.openbis.generic.server.asapi.v3.search.auth.AuthorisationInformation; import ch.ethz.sis.openbis.generic.server.asapi.v3.search.auth.AuthorisationInformation;
import ch.ethz.sis.openbis.generic.server.asapi.v3.search.auth.ISQLAuthorisationInformationProviderDAO; import ch.ethz.sis.openbis.generic.server.asapi.v3.search.auth.ISQLAuthorisationInformationProviderDAO;
...@@ -28,7 +30,11 @@ import ch.ethz.sis.openbis.generic.server.asapi.v3.search.dao.ISQLSearchDAO; ...@@ -28,7 +30,11 @@ import ch.ethz.sis.openbis.generic.server.asapi.v3.search.dao.ISQLSearchDAO;
import ch.ethz.sis.openbis.generic.server.asapi.v3.search.hibernate.IID2PETranslator; import ch.ethz.sis.openbis.generic.server.asapi.v3.search.hibernate.IID2PETranslator;
import ch.ethz.sis.openbis.generic.server.asapi.v3.search.mapper.TableMapper; import ch.ethz.sis.openbis.generic.server.asapi.v3.search.mapper.TableMapper;
import java.util.Collections;
import java.util.Iterator;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* Manages detailed search with material search criteria. * Manages detailed search with material search criteria.
...@@ -73,8 +79,14 @@ public class MaterialSearchManager extends AbstractCompositeEntitySearchManager< ...@@ -73,8 +79,14 @@ public class MaterialSearchManager extends AbstractCompositeEntitySearchManager<
final AbstractCompositeSearchCriteria parentCriteria, final String idsColumnName) { final AbstractCompositeSearchCriteria parentCriteria, final String idsColumnName) {
if (criteria.getCriteria().stream().anyMatch((criterion) -> criterion instanceof PermIdSearchCriteria)) if (criteria.getCriteria().stream().anyMatch((criterion) -> criterion instanceof PermIdSearchCriteria))
{ {
// Perm ID equals to string is not supported.
throw new UnsupportedOperationException("Please use criteria.withId().thatEquals(new MaterialPermId('CODE','TYPE')) instead."); throw new UnsupportedOperationException("Please use criteria.withId().thatEquals(new MaterialPermId('CODE','TYPE')) instead.");
} }
if (criteria.getCriteria().stream().anyMatch((criterion) -> criterion instanceof ModifierSearchCriteria))
{
// Search by modifier is not supported but the result should be empty.
return Collections.emptySet();
}
return doSearchForIDs(userId, criteria, null, idsColumnName, TableMapper.MATERIAL); return doSearchForIDs(userId, criteria, null, idsColumnName, TableMapper.MATERIAL);
} }
......
...@@ -259,41 +259,41 @@ public class SearchMaterialTest extends AbstractTest ...@@ -259,41 +259,41 @@ public class SearchMaterialTest extends AbstractTest
testSearch(TEST_USER, criteria, new MaterialPermId("BACTERIUM1", "BACTERIUM"), new MaterialPermId("BACTERIUM2", "BACTERIUM")); testSearch(TEST_USER, criteria, new MaterialPermId("BACTERIUM1", "BACTERIUM"), new MaterialPermId("BACTERIUM2", "BACTERIUM"));
} }
// @Test @Test
// public void testSearchWithModifierWithUserIdThatEquals() public void testSearchWithModifierWithUserIdThatEquals()
// { {
// // search by a modifier not supported yet // search by a modifier not supported yet
// MaterialSearchCriteria criteria = new MaterialSearchCriteria(); MaterialSearchCriteria criteria = new MaterialSearchCriteria();
// criteria.withModifier().withUserId().thatEquals("etlserver"); criteria.withModifier().withUserId().thatEquals("etlserver");
// testSearch(TEST_USER, criteria); testSearch(TEST_USER, criteria);
// } }
//
// @Test @Test
// public void testSearchWithModifierWithFirstNameThatEquals() public void testSearchWithModifierWithFirstNameThatEquals()
// { {
// // search by a modifier not supported yet // search by a modifier not supported yet
// MaterialSearchCriteria criteria = new MaterialSearchCriteria(); MaterialSearchCriteria criteria = new MaterialSearchCriteria();
// criteria.withModifier().withFirstName().thatEquals("John 2"); criteria.withModifier().withFirstName().thatEquals("John 2");
// testSearch(TEST_USER, criteria); testSearch(TEST_USER, criteria);
// } }
//
// @Test @Test
// public void testSearchWithModifierWithLastNameThatEquals() public void testSearchWithModifierWithLastNameThatEquals()
// { {
// // search by a modifier not supported yet // search by a modifier not supported yet
// MaterialSearchCriteria criteria = new MaterialSearchCriteria(); MaterialSearchCriteria criteria = new MaterialSearchCriteria();
// criteria.withModifier().withLastName().thatEquals("ETL Server"); criteria.withModifier().withLastName().thatEquals("ETL Server");
// testSearch(TEST_USER, criteria); testSearch(TEST_USER, criteria);
// } }
//
// @Test @Test
// public void testSearchWithModifierWithEmailThatEquals() public void testSearchWithModifierWithEmailThatEquals()
// { {
// // search by a modifier not supported yet // search by a modifier not supported yet
// MaterialSearchCriteria criteria = new MaterialSearchCriteria(); MaterialSearchCriteria criteria = new MaterialSearchCriteria();
// criteria.withModifier().withEmail().thatEquals("etlserver@systemsx.ch"); criteria.withModifier().withEmail().thatEquals("etlserver@systemsx.ch");
// testSearch(TEST_USER, criteria); testSearch(TEST_USER, criteria);
// } }
@Test @Test
public void testSearchWithRegistrationDate() public void testSearchWithRegistrationDate()
......
...@@ -932,7 +932,7 @@ public class SearchSampleTest extends AbstractSampleTest ...@@ -932,7 +932,7 @@ public class SearchSampleTest extends AbstractSampleTest
v3api.logout(sessionToken); v3api.logout(sessionToken);
} }
// TODO: get rid of SortOrder, it makes sence only for full text search. // TODO: get rid of SortOrder, it makes sense only for full text search.
// @Test // @Test
// public void testSearchWithSortingByCodeScore() // public void testSearchWithSortingByCodeScore()
// { // {
......
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