Skip to content

Commit 1da02dc

Browse files
authored
Merge pull request #8662 from swagger-api/fix-output-folder
fixes output folder in zip file
2 parents d1a0f70 + 07b089e commit 1da02dc

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

modules/swagger-generator/src/main/java/io/swagger/v3/generator/online/GeneratorController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -386,7 +386,7 @@ private ResponseContext downloadFile(File outputRootFolder, File outputContentFo
386386

387387
final ZipUtil zipUtil = new ZipUtil();
388388
try {
389-
zipUtil.compressFiles(Arrays.asList(outputContentFolder.listFiles()), outputFile.getAbsolutePath());
389+
zipUtil.compressFiles(Arrays.asList(outputRootFolder.listFiles()), outputFile.getAbsolutePath());
390390
} catch (IOException e) {
391391
return new ResponseContext()
392392
.status(500)
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package io.swagger.v3.generator.online;
2+
3+
import com.fasterxml.jackson.databind.JsonNode;
4+
import io.swagger.codegen.v3.service.GenerationRequest;
5+
import io.swagger.codegen.v3.service.Options;
6+
import io.swagger.oas.inflector.models.RequestContext;
7+
import io.swagger.oas.inflector.models.ResponseContext;
8+
import io.swagger.v3.core.util.Json;
9+
import org.apache.commons.io.FileUtils;
10+
import org.testng.Assert;
11+
import org.testng.annotations.Test;
12+
13+
import javax.ws.rs.core.MediaType;
14+
import java.io.File;
15+
import java.util.LinkedHashMap;
16+
import java.util.Map;
17+
18+
public class GeneratorControllerTest {
19+
@Test
20+
public void generateJava() throws Exception {
21+
String json = FileUtils.readFileToString(new File("src/test/resources/petstore-oas3.json"));
22+
JsonNode node = Json.mapper().readTree(json);
23+
Map<String, Object> spec = Json.mapper().convertValue(node, LinkedHashMap.class);
24+
25+
26+
GenerationRequest generationRequest = new GenerationRequest()
27+
.spec(spec)
28+
.lang("java")
29+
.options(new Options()
30+
.outputDir("testout")
31+
.addAdditionalProperty("outputFolder", "testoutputFolder")
32+
.addAdditionalProperty("useRuntimeException", true)
33+
.addAdditionalProperty("useRxJava", true));
34+
35+
GeneratorController g = new GeneratorController();
36+
RequestContext r = new RequestContext();
37+
ResponseContext rr = g.generate(r, generationRequest);
38+
Assert.assertEquals(rr.getStatus(), 200);
39+
Assert.assertEquals(rr.getContentType(), MediaType.APPLICATION_OCTET_STREAM_TYPE);
40+
Assert.assertTrue(rr.getHeaders().getFirst("Content-Disposition").contains(" filename=\"java-client-generated.zip\""));
41+
}
42+
}

0 commit comments

Comments
 (0)