How to use FrameConsumerResultCallbackTest class of org.testcontainers.containers.output package

Best Testcontainers-java code snippet using org.testcontainers.containers.output.FrameConsumerResultCallbackTest

Source:FrameConsumerResultCallbackTest.java Github

copy

Full Screen

...8import java.util.concurrent.TimeoutException;9import java.util.function.Consumer;10import org.junit.Assert;11import org.junit.Test;12public class FrameConsumerResultCallbackTest {13 private static final String FRAME_PAYLOAD = "\u001b[0;32m\u0422\u0435\u0441\u04421\u001b[0m\n\u001b[1;33mTest2\u001b[0m\n\u001b[0;31mTest3\u001b[0m";14 private static final String LOG_RESULT = "\u0422\u0435\u0441\u04421\nTest2\nTest3";15 @Test16 public void passStderrFrameWithoutColors() {17 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();18 ToStringConsumer consumer = new ToStringConsumer();19 callback.addConsumer(STDERR, consumer);20 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDERR, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));21 Assert.assertEquals(FrameConsumerResultCallbackTest.LOG_RESULT, consumer.toUtf8String());22 }23 @Test24 public void passStderrFrameWithColors() {25 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();26 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);27 callback.addConsumer(STDERR, consumer);28 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDERR, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));29 Assert.assertEquals(FrameConsumerResultCallbackTest.FRAME_PAYLOAD, consumer.toUtf8String());30 }31 @Test32 public void passStdoutFrameWithoutColors() {33 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();34 ToStringConsumer consumer = new ToStringConsumer();35 callback.addConsumer(STDOUT, consumer);36 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));37 Assert.assertEquals(FrameConsumerResultCallbackTest.LOG_RESULT, consumer.toUtf8String());38 }39 @Test40 public void passStdoutFrameWithColors() {41 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();42 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);43 callback.addConsumer(STDOUT, consumer);44 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));45 Assert.assertEquals(FrameConsumerResultCallbackTest.FRAME_PAYLOAD, consumer.toUtf8String());46 }47 @Test48 public void basicConsumer() {49 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();50 FrameConsumerResultCallbackTest.BasicConsumer consumer = new FrameConsumerResultCallbackTest.BasicConsumer();51 callback.addConsumer(STDOUT, consumer);52 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));53 Assert.assertEquals(FrameConsumerResultCallbackTest.LOG_RESULT, consumer.toString());54 }55 @Test56 public void passStdoutNull() {57 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();58 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);59 callback.addConsumer(STDOUT, consumer);60 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, null));61 Assert.assertEquals("", consumer.toUtf8String());62 }63 @Test64 public void passStdoutEmptyLine() {65 String payload = "";66 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();67 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);68 callback.addConsumer(STDOUT, consumer);69 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, payload.getBytes()));70 Assert.assertEquals(payload, consumer.toUtf8String());71 }72 @Test73 public void passStdoutSingleLine() {74 String payload = "Test";75 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();76 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);77 callback.addConsumer(STDOUT, consumer);78 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, payload.getBytes()));79 Assert.assertEquals(payload, consumer.toUtf8String());80 }81 @Test82 public void passStdoutSingleLineWithNewline() {83 String payload = "Test\n";84 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();85 ToStringConsumer consumer = new ToStringConsumer().withRemoveAnsiCodes(false);86 callback.addConsumer(STDOUT, consumer);87 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.STDOUT, payload.getBytes()));88 Assert.assertEquals(payload, consumer.toUtf8String());89 }90 @Test91 public void passRawFrameWithoutColors() throws IOException, TimeoutException {92 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();93 WaitingConsumer waitConsumer = new WaitingConsumer();94 callback.addConsumer(STDOUT, waitConsumer);95 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.RAW, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));96 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("Test2")), 1, TimeUnit.SECONDS);97 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("????1")), 1, TimeUnit.SECONDS);98 Exception exception = null;99 try {100 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("Test3")), 1, TimeUnit.SECONDS);101 } catch (Exception e) {102 exception = e;103 }104 Assert.assertTrue((exception instanceof TimeoutException));105 callback.close();106 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("Test3")), 1, TimeUnit.SECONDS);107 }108 @Test109 public void passRawFrameWithColors() throws IOException, TimeoutException {110 FrameConsumerResultCallback callback = new FrameConsumerResultCallback();111 WaitingConsumer waitConsumer = new WaitingConsumer().withRemoveAnsiCodes(false);112 callback.addConsumer(STDOUT, waitConsumer);113 callback.onNext(new com.github.dockerjava.api.model.Frame(StreamType.RAW, FrameConsumerResultCallbackTest.FRAME_PAYLOAD.getBytes()));114 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("\u001b[1;33mTest2\u001b[0m")), 1, TimeUnit.SECONDS);115 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("\u001b[0;32m\u0422\u0435\u0441\u04421\u001b[0m")), 1, TimeUnit.SECONDS);116 Exception exception = null;117 try {118 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("\u001b[0;31mTest3\u001b[0m")), 1, TimeUnit.SECONDS);119 } catch (Exception e) {120 exception = e;121 }122 Assert.assertTrue((exception instanceof TimeoutException));123 callback.close();124 waitConsumer.waitUntil(( frame) -> ((frame.getType()) == OutputType.STDOUT) && (frame.getUtf8String().equals("\u001b[0;31mTest3\u001b[0m")), 1, TimeUnit.SECONDS);125 }126 @Test127 public void reconstructBreakedUnicode() throws IOException {...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Testcontainers-java automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Test Your Web Or Mobile Apps On 3000+ Browsers

Signup for free

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful