Merge branch 'ks-20200131-near-search-http' of https://github.com/jamesagnew/hapi-fhir into ks-20200131-near-search-http

This commit is contained in:
Ken Stevens 2020-02-03 08:25:55 -05:00
commit 191a756840
2 changed files with 32 additions and 7 deletions

View File

@ -386,7 +386,9 @@ public class SubscriptionTriggeringSvcImpl implements ISubscriptionTriggeringSvc
ScheduledJobDefinition jobDetail = new ScheduledJobDefinition();
jobDetail.setId(getClass().getName());
jobDetail.setJobClass(Job.class);
mySchedulerService.scheduleLocalJob(60 * DateUtils.MILLIS_PER_SECOND, jobDetail);
// Currently jobs ae kept in a local ArrayList so this should be a local job, and
// it can fire frequently without adding load
mySchedulerService.scheduleLocalJob(5 * DateUtils.MILLIS_PER_SECOND, jobDetail);
}
public static class Job implements HapiJob {

View File

@ -46,6 +46,7 @@ import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
import static org.hamcrest.CoreMatchers.containsString;
import static org.junit.Assert.assertEquals;
@ -56,10 +57,6 @@ import static org.junit.Assert.fail;
* Test the rest-hook subscriptions
*/
@SuppressWarnings("Duplicates")
@TestPropertySource(properties = {
UnregisterScheduledProcessor.SCHEDULING_DISABLED + "=false"
})
@DirtiesContext
public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(SubscriptionTriggeringDstu3Test.class);
@ -194,6 +191,9 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
waitForQueueToDrain();
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(0, ourCreatedObservations);
waitForSize(2, ourUpdatedObservations);
@ -248,6 +248,13 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
responseValue = response.getParameter().get(0).getValue().primitiveValue();
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(33, ourUpdatedObservations);
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(51, ourUpdatedObservations);
waitForSize(0, ourCreatedObservations);
waitForSize(0, ourCreatedPatients);
@ -284,8 +291,15 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
String responseValue = response.getParameter().get(0).getValue().primitiveValue();
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
waitForSize(0, ourCreatedPatients);
waitForSize(3, ourUpdatedPatients);
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
assertEquals(0, ourCreatedPatients.size());
assertEquals(ourUpdatedPatients.stream().map(t->t.getId()).collect(Collectors.joining(", ")), 3, ourUpdatedPatients.size());
}
@ -316,6 +330,8 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
String responseValue = response.getParameter().get(0).getValue().primitiveValue();
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(0, ourCreatedPatients);
waitForSize(3, ourUpdatedPatients);
@ -367,6 +383,9 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
responseValue = response.getParameter().get(0).getValue().primitiveValue();
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
mySubscriptionTriggeringSvc.runDeliveryPass();
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(10, ourUpdatedObservations);
waitForSize(0, ourCreatedObservations);
waitForSize(0, ourCreatedPatients);
@ -421,6 +440,8 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
String responseValue = response.getParameter().get(0).getValue().primitiveValue();
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(20, ourUpdatedObservations);
waitForSize(0, ourCreatedObservations);
waitForSize(0, ourCreatedPatients);
@ -458,6 +479,8 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
assertThat(responseValue, containsString("Subscription triggering job submitted as JOB ID"));
waitForQueueToDrain();
mySubscriptionTriggeringSvc.runDeliveryPass();
waitForSize(0, ourCreatedObservations);
waitForSize(1, ourUpdatedObservations);