Add 4.0.0 version enum
This commit is contained in:
parent
50a8c66bf5
commit
f2be9f47a0
|
@ -30,6 +30,7 @@ public enum VersionEnum {
|
|||
V3_5_0,
|
||||
V3_6_0,
|
||||
V3_7_0,
|
||||
V3_8_0
|
||||
V3_8_0,
|
||||
V4_0_0
|
||||
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@ package ca.uhn.fhir.jpa.dao.r4;
|
|||
|
||||
import ca.uhn.fhir.jpa.dao.DaoConfig;
|
||||
import ca.uhn.fhir.jpa.entity.Search;
|
||||
import ca.uhn.fhir.jpa.model.search.SearchStatusEnum;
|
||||
import ca.uhn.fhir.jpa.model.entity.ResourceTable;
|
||||
import ca.uhn.fhir.jpa.model.search.SearchStatusEnum;
|
||||
import ca.uhn.fhir.jpa.search.SearchCoordinatorSvcImpl;
|
||||
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap;
|
||||
import ca.uhn.fhir.rest.api.SearchTotalModeEnum;
|
||||
|
@ -588,6 +588,24 @@ public class FhirResourceDaoR4SearchOptimizedTest extends BaseJpaR4Test {
|
|||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSearchForTokenValueOnlyUsesValueHash() {
|
||||
|
||||
myCaptureQueriesListener.clear();
|
||||
|
||||
SearchParameterMap params = new SearchParameterMap();
|
||||
params.add(Patient.SP_IDENTIFIER, new TokenParam("PT00000"));
|
||||
IBundleProvider results = myPatientDao.search(params);
|
||||
results.getResources(0, 1); // won't return anything
|
||||
|
||||
myCaptureQueriesListener.logSelectQueries();
|
||||
|
||||
String selectQuery = myCaptureQueriesListener.getSelectQueries().get(1).getSql(true, true);
|
||||
assertThat(selectQuery, containsString("HASH_VALUE in"));
|
||||
assertThat(selectQuery, not(containsString("HASH_SYS")));
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* A search with a big list of OR clauses for references should use a single SELECT ... WHERE .. IN
|
||||
|
@ -777,7 +795,6 @@ public class FhirResourceDaoR4SearchOptimizedTest extends BaseJpaR4Test {
|
|||
});
|
||||
|
||||
|
||||
|
||||
myCaptureQueriesListener.clear();
|
||||
p = new Patient();
|
||||
p.setId(id);
|
||||
|
@ -956,16 +973,15 @@ public class FhirResourceDaoR4SearchOptimizedTest extends BaseJpaR4Test {
|
|||
}
|
||||
|
||||
|
||||
|
||||
@Test
|
||||
public void testReferenceOrLinksUseInList_ForcedIds() {
|
||||
|
||||
List<String> ids = new ArrayList<>();
|
||||
for (int i = 0; i < 5; i++) {
|
||||
Organization org = new Organization();
|
||||
org.setId("ORG"+i);
|
||||
org.setId("ORG" + i);
|
||||
org.setActive(true);
|
||||
runInTransaction(()->{
|
||||
runInTransaction(() -> {
|
||||
IIdType id = myOrganizationDao.update(org).getId();
|
||||
ids.add(id.getIdPart());
|
||||
});
|
||||
|
@ -974,14 +990,13 @@ public class FhirResourceDaoR4SearchOptimizedTest extends BaseJpaR4Test {
|
|||
// assertTrue(org.getActive());
|
||||
}
|
||||
|
||||
runInTransaction(()->{
|
||||
runInTransaction(() -> {
|
||||
for (ResourceTable next : myResourceTableDao.findAll()) {
|
||||
ourLog.info("Resource pid {} of type {}", next.getId(), next.getResourceType());
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
for (int i = 0; i < 5; i++) {
|
||||
Patient pt = new Patient();
|
||||
pt.setManagingOrganization(new Reference("Organization/" + ids.get(i)));
|
||||
|
|
|
@ -5,6 +5,7 @@ import ca.uhn.fhir.jpa.dao.DaoConfig;
|
|||
import ca.uhn.fhir.jpa.entity.Search;
|
||||
import ca.uhn.fhir.jpa.model.entity.ResourceHistoryTable;
|
||||
import ca.uhn.fhir.jpa.search.SearchCoordinatorSvcImpl;
|
||||
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap;
|
||||
import ca.uhn.fhir.jpa.util.JpaConstants;
|
||||
import ca.uhn.fhir.jpa.util.TestUtil;
|
||||
import ca.uhn.fhir.model.api.TemporalPrecisionEnum;
|
||||
|
@ -14,6 +15,7 @@ import ca.uhn.fhir.parser.IParser;
|
|||
import ca.uhn.fhir.parser.StrictErrorHandler;
|
||||
import ca.uhn.fhir.rest.api.Constants;
|
||||
import ca.uhn.fhir.rest.api.*;
|
||||
import ca.uhn.fhir.rest.api.server.IBundleProvider;
|
||||
import ca.uhn.fhir.rest.client.api.IClientInterceptor;
|
||||
import ca.uhn.fhir.rest.client.api.IGenericClient;
|
||||
import ca.uhn.fhir.rest.client.api.IHttpRequest;
|
||||
|
@ -112,6 +114,21 @@ public class ResourceProviderR4Test extends BaseResourceProviderR4Test {
|
|||
myDaoConfig.setSearchPreFetchThresholds(new DaoConfig().getSearchPreFetchThresholds());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSearchForTokenValueOnlyUsesValueHash() {
|
||||
|
||||
myCaptureQueriesListener.clear();
|
||||
|
||||
ourClient
|
||||
.loadPage()
|
||||
.byUrl(ourServerBase + "/Practitioner?identifier=" + UrlUtil.escapeUrlParam("ABC|,DEF"))
|
||||
.andReturnBundle(Bundle.class)
|
||||
.execute();
|
||||
|
||||
myCaptureQueriesListener.logSelectQueries();
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testSearchWithContainsLowerCase() {
|
||||
myDaoConfig.setAllowContainsSearches(true);
|
||||
|
|
Loading…
Reference in New Issue