Skip to content

Commit 20fdee2

Browse files
authored
Add Transferable.of(String, int) (#5741)
The new method adds similar capability of `Transferable.of(byte[], int)` but for `String`.
1 parent 9fb5db1 commit 20fdee2

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

core/build.gradle

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,3 +113,9 @@ tasks.generatePomFileForMavenJavaPublication.finalizedBy(
113113
]
114114
}
115115
)
116+
117+
tasks.japicmp {
118+
methodExcludes = [
119+
"org.testcontainers.images.builder.Transferable#of(java.lang.String,int)"
120+
]
121+
}

core/src/main/java/org/testcontainers/images/builder/Transferable.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ static Transferable of(String string) {
1616
return of(string.getBytes(StandardCharsets.UTF_8));
1717
}
1818

19+
static Transferable of(String string, int fileMode) {
20+
return of(string.getBytes(StandardCharsets.UTF_8), fileMode);
21+
}
22+
1923
static Transferable of(byte[] bytes) {
2024
return of(bytes, DEFAULT_FILE_MODE);
2125
}

core/src/test/java/org/testcontainers/containers/GenericContainerTest.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,19 @@ public void shouldCopyTransferableAsFile() {
8484
}
8585
}
8686

87+
@Test
88+
public void shouldCopyTransferableAsFileWithFileMode() {
89+
try (
90+
GenericContainer<?> container = new GenericContainer<>(TestImages.TINY_IMAGE)
91+
.withStartupCheckStrategy(new NoopStartupCheckStrategy())
92+
.withCopyToContainer(Transferable.of("test", 0777), "/tmp/test")
93+
.waitingFor(new WaitForExitedState(state -> state.getExitCodeLong() > 0))
94+
.withCommand("sh", "-c", "ls -ll /tmp | grep '\\-rwxrwxrwx\\|test' && exit 100")
95+
) {
96+
assertThatThrownBy(container::start).hasStackTraceContaining("Container exited with code 100");
97+
}
98+
}
99+
87100
@Test
88101
public void shouldCopyTransferableAfterMountableFile() {
89102
try (

0 commit comments

Comments
 (0)