Skip to content

Commit 236254c

Browse files
committed
Merge pull request #1299 from lugaru1234/issue1226
Fixes #1226: SubResourceScannerTest has been migrated
2 parents e88485d + b3d6731 commit 236254c

File tree

12 files changed

+90
-79
lines changed

12 files changed

+90
-79
lines changed
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
package io.swagger;
2+
3+
import static org.testng.Assert.assertEquals;
4+
import static org.testng.Assert.assertNotNull;
5+
import static org.testng.Assert.assertTrue;
6+
7+
import io.swagger.jaxrs.Reader;
8+
import io.swagger.models.Operation;
9+
import io.swagger.models.Swagger;
10+
import io.swagger.models.parameters.BodyParameter;
11+
import io.swagger.models.parameters.Parameter;
12+
import io.swagger.resources.ResourceWithSubResources;
13+
import io.swagger.resources.SubResourceHead;
14+
import io.swagger.resources.TestResource;
15+
import io.swagger.resources.Resource942;
16+
import io.swagger.util.Json;
17+
18+
import org.testng.annotations.Test;
19+
20+
import java.util.Arrays;
21+
22+
public class SubResourceScannerTest {
23+
24+
@Test(description = "scan a resource with subresources")
25+
public void scanResourceWithSubresources() {
26+
final Swagger swagger = getSwagger(ResourceWithSubResources.class);
27+
assertEquals(getOperationId(swagger, "/employees"), "getTest");
28+
assertEquals(getOperationId(swagger, "/employees/{id}"), "getSubresourceOperation");
29+
assertEquals(getOperationId(swagger, "/employees/noPath"), "getGreeting");
30+
}
31+
32+
@Test(description = "scan another resource with subresources")
33+
public void scanAnotherResourceWithSubresources() {
34+
final Swagger swagger = getSwagger(TestResource.class);
35+
final Operation get = getGet(swagger, "/test/more/otherStatus");
36+
assertEquals(get.getOperationId(), "otherStatus");
37+
38+
final Parameter qp = get.getParameters().get(0);
39+
assertEquals(qp.getIn(), "query");
40+
assertEquals(qp.getName(), "qp");
41+
42+
assertTrue(get.getProduces().containsAll(Arrays.asList("application/json", "application/xml")));
43+
44+
assertEquals(swagger.getPaths().keySet().size(), 2);
45+
}
46+
47+
@Test(description = "scan resource with class-based sub-resources")
48+
public void scanResourceWithClassBasedSubresources() {
49+
final Swagger swagger = getSwagger(SubResourceHead.class);
50+
assertEquals(swagger.getPaths().size(), 3);
51+
assertEquals(getOperationId(swagger, "/head/noPath"), "getGreeting");
52+
assertEquals(getOperationId(swagger, "/head/tail/hello"), "getGreeting");
53+
54+
final Operation echo = getGet(swagger, "/head/tail/{string}");
55+
assertEquals(echo.getOperationId(), "getEcho");
56+
assertEquals(echo.getParameters().size(), 1);
57+
}
58+
59+
@Test(description = "find a body param")
60+
public void findBodyParam() {
61+
Swagger swagger = getSwagger(Resource942.class);
62+
assertTrue(swagger.getPath("/test").getPost().getParameters().get(0) instanceof BodyParameter);
63+
}
64+
65+
private Swagger getSwagger(Class<?> cls) {
66+
return new Reader(new Swagger()).read(cls);
67+
}
68+
69+
private Operation getGet(Swagger swagger, String path) {
70+
return swagger.getPaths().get(path).getGet();
71+
}
72+
73+
private String getOperationId(Swagger swagger, String path) {
74+
return getGet(swagger, path).getOperationId();
75+
}
76+
}

modules/swagger-jaxrs/src/test/scala/models/Employee.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/models/Employee.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package models;
1+
package io.swagger.models;
22

33
import javax.xml.bind.annotation.XmlRootElement;
44

modules/swagger-jaxrs/src/test/scala/resources/NoPathSubResource.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/NoPathSubResource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;

modules/swagger-jaxrs/src/test/scala/resources/Resource942.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/Resource942.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;
55
import io.swagger.annotations.ApiParam;
6-
import models.Employee;
6+
import io.swagger.models.Employee;
77

88
import javax.ws.rs.GET;
99
import javax.ws.rs.POST;

modules/swagger-jaxrs/src/test/scala/resources/Resource942SubResource.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/Resource942SubResource.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;
5-
import models.Employee;
5+
import io.swagger.models.Employee;
66

77
import javax.ws.rs.Path;
88
import javax.ws.rs.core.Response;

modules/swagger-jaxrs/src/test/scala/resources/ResourceWithSubResources.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/ResourceWithSubResources.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;
5-
import models.Employee;
5+
import io.swagger.models.Employee;
66

77
import javax.ws.rs.GET;
88
import javax.ws.rs.Path;

modules/swagger-jaxrs/src/test/scala/resources/SubResource.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/SubResource.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;
55
import io.swagger.annotations.ApiParam;
6-
import models.Employee;
6+
import io.swagger.models.Employee;
77

88
import javax.ws.rs.GET;
99
import javax.ws.rs.Path;

modules/swagger-jaxrs/src/test/scala/resources/SubResourceHead.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/SubResourceHead.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.jaxrs.Reader;

modules/swagger-jaxrs/src/test/scala/resources/SubResourceTail.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/SubResourceTail.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;

modules/swagger-jaxrs/src/test/scala/resources/TestResource.java renamed to modules/swagger-jaxrs/src/test/java/io/swagger/resources/TestResource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package resources;
1+
package io.swagger.resources;
22

33
import io.swagger.annotations.Api;
44
import io.swagger.annotations.ApiOperation;

0 commit comments

Comments
 (0)