From 6fb629227cbc84ebb41e089fc3ee01b3a534043c Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Wed, 17 Jan 2018 20:56:42 +0000 Subject: [PATCH] Fix race condition in SampleQuartzApplicationTests --- .../quartz/SampleQuartzApplicationTests.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/spring-boot-samples/spring-boot-sample-quartz/src/test/java/sample/quartz/SampleQuartzApplicationTests.java b/spring-boot-samples/spring-boot-sample-quartz/src/test/java/sample/quartz/SampleQuartzApplicationTests.java index 60890e9ad99..19b3b2a5b96 100644 --- a/spring-boot-samples/spring-boot-sample-quartz/src/test/java/sample/quartz/SampleQuartzApplicationTests.java +++ b/spring-boot-samples/spring-boot-sample-quartz/src/test/java/sample/quartz/SampleQuartzApplicationTests.java @@ -36,11 +36,15 @@ public class SampleQuartzApplicationTests { public OutputCapture outputCapture = new OutputCapture(); @Test - public void test() { - try (ConfigurableApplicationContext context = SpringApplication.run( - SampleQuartzApplication.class)) { - String output = this.outputCapture.toString(); - assertThat(output).contains("Hello World!"); + public void quartzJobIsTriggered() throws InterruptedException { + try (ConfigurableApplicationContext context = SpringApplication + .run(SampleQuartzApplication.class)) { + long end = System.currentTimeMillis() + 5000; + while ((!this.outputCapture.toString().contains("Hello World!")) + && System.currentTimeMillis() < end) { + Thread.sleep(100); + } + assertThat(this.outputCapture.toString()).contains("Hello World!"); } }