Repackage output capture and always use extension declaratively

Closes gh-17029
This commit is contained in:
Andy Wilkinson
2019-05-31 10:03:02 +01:00
parent d11d5ceb29
commit 0644a79401
69 changed files with 584 additions and 657 deletions

View File

@@ -17,11 +17,11 @@
package sample.quartz;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.RegisterExtension;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.test.extension.CapturedOutput;
import org.springframework.boot.test.extension.OutputExtension;
import org.springframework.boot.test.system.CapturedOutput;
import org.springframework.boot.test.system.OutputCaptureExtension;
import org.springframework.context.ConfigurableApplicationContext;
import static org.assertj.core.api.Assertions.assertThat;
@@ -31,21 +31,19 @@ import static org.assertj.core.api.Assertions.assertThat;
*
* @author Eddú Meléndez
*/
@ExtendWith(OutputCaptureExtension.class)
class SampleQuartzApplicationTests {
@RegisterExtension
CapturedOutput output = OutputExtension.capture();
@Test
void quartzJobIsTriggered() throws InterruptedException {
void quartzJobIsTriggered(CapturedOutput capturedOutput) throws InterruptedException {
try (ConfigurableApplicationContext context = SpringApplication
.run(SampleQuartzApplication.class)) {
long end = System.currentTimeMillis() + 5000;
while ((!this.output.toString().contains("Hello World!"))
while ((!capturedOutput.toString().contains("Hello World!"))
&& System.currentTimeMillis() < end) {
Thread.sleep(100);
}
assertThat(this.output).contains("Hello World!");
assertThat(capturedOutput).contains("Hello World!");
}
}