diff --git a/core/src/main/java/org/testcontainers/containers/VncRecordingContainer.java b/core/src/main/java/org/testcontainers/containers/VncRecordingContainer.java index 192a5bcd679..6fb28f9a72e 100644 --- a/core/src/main/java/org/testcontainers/containers/VncRecordingContainer.java +++ b/core/src/main/java/org/testcontainers/containers/VncRecordingContainer.java @@ -74,7 +74,7 @@ public VncRecordingContainer withVncPort(int vncPort) { return this; } - public VncRecordingContainer withVideoExtension(VncRecordingFormat recordingFormat) { + public VncRecordingContainer withVideoFormat(VncRecordingFormat recordingFormat) { if (recordingFormat != null) { this.recordingFormat = recordingFormat; } @@ -99,7 +99,7 @@ protected void configure() { @SneakyThrows public void saveRecordingToFile(@NonNull File file) { - try(InputStream inputStream = streamRecording()) { + try (InputStream inputStream = streamRecording()) { Files.copy(inputStream, file.toPath(), StandardCopyOption.REPLACE_EXISTING); } } @@ -121,7 +121,7 @@ public enum VncRecordingFormat { @Override String reencodeRecording(@NonNull VncRecordingContainer container, @NonNull String source) throws IOException, InterruptedException { String newFileOutput = "/newScreen.flv"; - container.execInContainer("ffmpeg" , "-i", source, "-vcodec", "libx264", newFileOutput); + container.execInContainer("ffmpeg", "-i", source, "-vcodec", "libx264", newFileOutput); return newFileOutput; } }, @@ -129,7 +129,7 @@ String reencodeRecording(@NonNull VncRecordingContainer container, @NonNull Stri @Override String reencodeRecording(@NonNull VncRecordingContainer container, @NonNull String source) throws IOException, InterruptedException { String newFileOutput = "/newScreen.mp4"; - container.execInContainer("ffmpeg" , "-i", source, "-vcodec", "libx264", "-movflags", "faststart", newFileOutput); + container.execInContainer("ffmpeg", "-i", source, "-vcodec", "libx264", "-movflags", "faststart", newFileOutput); return newFileOutput; } }; @@ -147,14 +147,8 @@ public String getExtension() { return filenameExtension; } - /** - * @return {@code vncRecordingFormat} value if not null, otherwise, {@link VncRecordingFormat#FLV} will be returned as a default format. - */ - public static VncRecordingFormat of(VncRecordingFormat vncRecordingFormat) { - if (vncRecordingFormat == null) { - return DEFAULT_FORMAT; - } - return vncRecordingFormat; + public static VncRecordingFormat getDefaultFormat() { + return DEFAULT_FORMAT; } } diff --git a/modules/selenium/src/main/java/org/testcontainers/containers/BrowserWebDriverContainer.java b/modules/selenium/src/main/java/org/testcontainers/containers/BrowserWebDriverContainer.java index 03807eef316..a121a56b5ea 100644 --- a/modules/selenium/src/main/java/org/testcontainers/containers/BrowserWebDriverContainer.java +++ b/modules/selenium/src/main/java/org/testcontainers/containers/BrowserWebDriverContainer.java @@ -185,7 +185,7 @@ protected void configure() { vncRecordingContainer = new VncRecordingContainer(this) .withVncPassword(DEFAULT_PASSWORD) .withVncPort(VNC_PORT) - .withVideoExtension(recordingFormat); + .withVideoFormat(recordingFormat); } if (customImageName != null) { @@ -364,7 +364,7 @@ public SELF withRecordingMode(VncRecordingMode recordingMode, File vncRecordingD return withRecordingMode(recordingMode, vncRecordingDirectory, null); } - public SELF withRecordingMode(VncRecordingMode recordingMode, File vncRecordingDirectory, @Nullable VncRecordingFormat recordingFormat) { + public SELF withRecordingMode(VncRecordingMode recordingMode, File vncRecordingDirectory, VncRecordingFormat recordingFormat) { this.recordingMode = recordingMode; this.vncRecordingDirectory = vncRecordingDirectory; this.recordingFormat = recordingFormat; diff --git a/modules/selenium/src/main/java/org/testcontainers/containers/DefaultRecordingFileFactory.java b/modules/selenium/src/main/java/org/testcontainers/containers/DefaultRecordingFileFactory.java index c64ee71bfce..1e98defe27d 100644 --- a/modules/selenium/src/main/java/org/testcontainers/containers/DefaultRecordingFileFactory.java +++ b/modules/selenium/src/main/java/org/testcontainers/containers/DefaultRecordingFileFactory.java @@ -16,7 +16,7 @@ public class DefaultRecordingFileFactory implements RecordingFileFactory { @Override public File recordingFileForTest(File vncRecordingDirectory, String prefix, boolean succeeded) { - return recordingFileForTest(vncRecordingDirectory, prefix, succeeded, null); + return recordingFileForTest(vncRecordingDirectory, prefix, succeeded, VncRecordingFormat.getDefaultFormat()); } @Override @@ -26,7 +26,7 @@ public File recordingFileForTest(File vncRecordingDirectory, String prefix, bool resultMarker, prefix, filenameDateFormat.format(new Date()), - VncRecordingFormat.of(recordingFormat).getExtension() + recordingFormat.getExtension() ); return new File(vncRecordingDirectory, fileName); } diff --git a/modules/selenium/src/main/java/org/testcontainers/containers/RecordingFileFactory.java b/modules/selenium/src/main/java/org/testcontainers/containers/RecordingFileFactory.java index 32912ddef86..aff607cf23d 100644 --- a/modules/selenium/src/main/java/org/testcontainers/containers/RecordingFileFactory.java +++ b/modules/selenium/src/main/java/org/testcontainers/containers/RecordingFileFactory.java @@ -12,10 +12,10 @@ default File recordingFileForTest(File vncRecordingDirectory, Description descri return recordingFileForTest(vncRecordingDirectory, description.getTestClass().getSimpleName() + "-" + description.getMethodName(), succeeded); } - File recordingFileForTest(File vncRecordingDirectory, String prefix, boolean succeeded); - default File recordingFileForTest(File vncRecordingDirectory, String prefix, boolean succeeded, VncRecordingFormat recordingFormat) { return recordingFileForTest(vncRecordingDirectory, prefix, succeeded); } + File recordingFileForTest(File vncRecordingDirectory, String prefix, boolean succeeded); + } diff --git a/modules/selenium/src/test/java/org/testcontainers/junit/ChromeRecordingWebDriverContainerTest.java b/modules/selenium/src/test/java/org/testcontainers/junit/ChromeRecordingWebDriverContainerTest.java index 34fc714e67c..fdf56aa0134 100644 --- a/modules/selenium/src/test/java/org/testcontainers/junit/ChromeRecordingWebDriverContainerTest.java +++ b/modules/selenium/src/test/java/org/testcontainers/junit/ChromeRecordingWebDriverContainerTest.java @@ -132,14 +132,14 @@ public void recordingTestThatShouldHaveCorrectDuration() throws IOException, Int mountableFile = MountableFile.forHostPath(recordedFiles[0].getCanonicalPath()); } - try( GenericContainer container = new GenericContainer<>(DockerImageName.parse("testcontainers/vnc-recorder:1.2.0")) ) { + try (GenericContainer container = new GenericContainer<>(DockerImageName.parse("testcontainers/vnc-recorder:1.2.0"))) { String recordFileContainerPath = "/tmp/chromeTestRecord.flv"; container.withCopyFileToContainer(mountableFile, recordFileContainerPath) - .withCreateContainerCmdModifier( createContainerCmd -> createContainerCmd.withEntrypoint("ffmpeg") ) - .withCommand("-i" , recordFileContainerPath, "-f" ,"null" ,"-" ) - .waitingFor( new LogMessageWaitStrategy() + .withCreateContainerCmdModifier(createContainerCmd -> createContainerCmd.withEntrypoint("ffmpeg")) + .withCommand("-i", recordFileContainerPath, "-f", "null", "-") + .waitingFor(new LogMessageWaitStrategy() .withRegEx(".*Duration.*") - .withStartupTimeout(Duration.of(60, SECONDS)) ) + .withStartupTimeout(Duration.of(60, SECONDS))) .start(); String ffmpegOutput = container.getLogs();