diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2022-04-06 19:37:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-06 19:37:30 +0200 |
commit | 346e8e66e9c8d7f06c336d6c27919551604f18c0 (patch) | |
tree | 3453769ddca6a16fed065fb5552ab6cd73cb0145 /configserver | |
parent | 039589faf5f989d80b9fec2b28ed955ac6fd86f6 (diff) | |
parent | cf3f7bbb9e99f5b3e6cf3ac3f93e813042e4a12c (diff) |
Merge branch 'master' into jonmv/more-http-url
Diffstat (limited to 'configserver')
2 files changed, 21 insertions, 14 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/application/CompressedApplicationInputStreamTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/application/CompressedApplicationInputStreamTest.java index 1e8005c8af6..c7662ac9ee4 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/application/CompressedApplicationInputStreamTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/application/CompressedApplicationInputStreamTest.java @@ -7,12 +7,16 @@ import com.yahoo.yolean.Exceptions; import org.apache.commons.compress.archivers.ArchiveOutputStream; import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream; import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; +import org.junit.Rule; import org.junit.Test; +import org.junit.rules.TemporaryFolder; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.Arrays; import java.util.List; import java.util.zip.GZIPOutputStream; @@ -26,6 +30,9 @@ import static org.junit.Assert.assertTrue; */ public class CompressedApplicationInputStreamTest { + @Rule + public TemporaryFolder temporaryFolder = new TemporaryFolder(); + private static void writeFileToTar(ArchiveOutputStream taos, File file) throws IOException { taos.putArchiveEntry(taos.createArchiveEntry(file, file.getName())); ByteStreams.copy(new FileInputStream(file), taos); @@ -41,14 +48,14 @@ public class CompressedApplicationInputStreamTest { return outFile; } - public static File createTarFile() throws IOException { - File outFile = File.createTempFile("testapp", ".tar.gz"); + public static File createTarFile(Path dir) throws IOException { + File outFile = Files.createTempFile(dir, "testapp", ".tar.gz").toFile(); ArchiveOutputStream archiveOutputStream = new TarArchiveOutputStream(new GZIPOutputStream(new FileOutputStream(outFile))); return createArchiveFile(archiveOutputStream, outFile); } - private static File createZipFile() throws IOException { - File outFile = File.createTempFile("testapp", ".tar.gz"); + private File createZipFile(Path dir) throws IOException { + File outFile = Files.createTempFile(dir, "testapp", ".tar.gz").toFile(); ArchiveOutputStream archiveOutputStream = new ZipArchiveOutputStream(new FileOutputStream(outFile)); return createArchiveFile(archiveOutputStream, outFile); } @@ -62,7 +69,7 @@ public class CompressedApplicationInputStreamTest { @Test public void require_that_valid_tar_application_can_be_unpacked() throws IOException { - File outFile = createTarFile(); + File outFile = createTarFile(temporaryFolder.getRoot().toPath()); try (CompressedApplicationInputStream unpacked = streamFromTarGz(outFile)) { File outApp = unpacked.decompress(); assertTestApp(outApp); @@ -71,7 +78,7 @@ public class CompressedApplicationInputStreamTest { @Test public void require_that_valid_tar_application_in_subdir_can_be_unpacked() throws IOException { - File outFile = File.createTempFile("testapp", ".tar.gz"); + File outFile = Files.createTempFile(temporaryFolder.getRoot().toPath(), "testapp", ".tar.gz").toFile(); ArchiveOutputStream archiveOutputStream = new TarArchiveOutputStream(new GZIPOutputStream(new FileOutputStream(outFile))); File app = new File("src/test/resources/deploy/validapp"); @@ -100,7 +107,7 @@ public class CompressedApplicationInputStreamTest { @Test public void require_that_valid_zip_application_can_be_unpacked() throws IOException { - File outFile = createZipFile(); + File outFile = createZipFile(temporaryFolder.getRoot().toPath()); try (CompressedApplicationInputStream unpacked = streamFromZip(outFile)) { File outApp = unpacked.decompress(); assertTestApp(outApp); @@ -161,8 +168,8 @@ public class CompressedApplicationInputStreamTest { streamFromTarGz(app).close(); } - private static File createTarGz(String appDir) throws IOException, InterruptedException { - File tmpTar = File.createTempFile("myapp", ".tar"); + private File createTarGz(String appDir) throws IOException, InterruptedException { + File tmpTar = Files.createTempFile(temporaryFolder.getRoot().toPath(), "myapp", ".tar").toFile(); Process p = new ProcessBuilder("tar", "-C", appDir, "-cvf", tmpTar.getAbsolutePath(), ".").start(); p.waitFor(); p = new ProcessBuilder("gzip", tmpTar.getAbsolutePath()).start(); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionCreateHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionCreateHandlerTest.java index f77c7611858..58a3593ae14 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionCreateHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionCreateHandlerTest.java @@ -110,20 +110,20 @@ public class SessionCreateHandlerTest extends SessionHandlerTest { @Test public void require_that_post_request_must_have_correct_content_type() throws IOException { HashMap<String, String> headers = new HashMap<>(); // no Content-Type header - File outFile = CompressedApplicationInputStreamTest.createTarFile(); + File outFile = CompressedApplicationInputStreamTest.createTarFile(temporaryFolder.getRoot().toPath()); HttpResponse response = createHandler().handle(post(outFile, headers, null)); assertHttpStatusCodeErrorCodeAndMessage(response, BAD_REQUEST, HttpErrorResponse.ErrorCode.BAD_REQUEST, "Request contains no Content-Type header"); } private void assertIllegalFromParameter(String fromValue) throws IOException { - File outFile = CompressedApplicationInputStreamTest.createTarFile(); + File outFile = CompressedApplicationInputStreamTest.createTarFile(temporaryFolder.getRoot().toPath()); HttpRequest request = post(outFile, postHeaders, Collections.singletonMap("from", fromValue)); assertHttpStatusCodeErrorCodeAndMessage(createHandler().handle(request), BAD_REQUEST, HttpErrorResponse.ErrorCode.BAD_REQUEST, "Parameter 'from' has illegal value '" + fromValue + "'"); } @Test public void require_that_prepare_url_is_returned_on_success() throws IOException { - File outFile = CompressedApplicationInputStreamTest.createTarFile(); + File outFile = CompressedApplicationInputStreamTest.createTarFile(temporaryFolder.getRoot().toPath()); Map<String, String> parameters = Collections.singletonMap("name", "foo"); HttpResponse response = createHandler().handle(post(outFile, postHeaders, parameters)); assertNotNull(response); @@ -144,7 +144,7 @@ public class SessionCreateHandlerTest extends SessionHandlerTest { @Test public void require_internal_error_when_exception() throws IOException { - File outFile = CompressedApplicationInputStreamTest.createTarFile(); + File outFile = CompressedApplicationInputStreamTest.createTarFile(temporaryFolder.getRoot().toPath()); new FileWriter(outFile).write("rubbish"); HttpResponse response = createHandler().handle(post(outFile)); assertHttpStatusCodeErrorCodeAndMessage(response, INTERNAL_SERVER_ERROR, @@ -154,7 +154,7 @@ public class SessionCreateHandlerTest extends SessionHandlerTest { @Test public void require_that_handler_unpacks_application() throws IOException { - File outFile = CompressedApplicationInputStreamTest.createTarFile(); + File outFile = CompressedApplicationInputStreamTest.createTarFile(temporaryFolder.getRoot().toPath()); createHandler().handle(post(outFile)); ApplicationFile applicationFile = applicationRepository.getApplicationFileFromSession(tenant, 2, Path.parse("services.xml"), Session.Mode.READ); assertTrue(applicationFile.exists()); |