mirror of
https://github.com/github/codeql.git
synced 2026-05-04 05:05:12 +02:00
Duplicate tests for Jakarta
This commit is contained in:
196
java/ql/test/library-tests/frameworks/JaxWs/JakartaRs1.java
Normal file
196
java/ql/test/library-tests/frameworks/JaxWs/JakartaRs1.java
Normal file
@@ -0,0 +1,196 @@
|
||||
import java.io.InputStream;
|
||||
import java.io.IOException;
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.lang.reflect.Type;
|
||||
import jakarta.ws.rs.GET;
|
||||
import jakarta.ws.rs.POST;
|
||||
import jakarta.ws.rs.DELETE;
|
||||
import jakarta.ws.rs.PUT;
|
||||
import jakarta.ws.rs.OPTIONS;
|
||||
import jakarta.ws.rs.HEAD;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.BeanParam;
|
||||
import jakarta.ws.rs.CookieParam;
|
||||
import jakarta.ws.rs.FormParam;
|
||||
import jakarta.ws.rs.HeaderParam;
|
||||
import jakarta.ws.rs.MatrixParam;
|
||||
import jakarta.ws.rs.PathParam;
|
||||
import jakarta.ws.rs.Produces;
|
||||
import jakarta.ws.rs.QueryParam;
|
||||
import jakarta.ws.rs.client.Client;
|
||||
import jakarta.ws.rs.core.Context;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.core.MultivaluedMap;
|
||||
import jakarta.ws.rs.core.Response;
|
||||
import jakarta.ws.rs.ext.MessageBodyReader;
|
||||
|
||||
@Path("")
|
||||
public class JakartaRs1 { // $RootResourceClass
|
||||
public JakartaRs1() { // $InjectableConstructor
|
||||
}
|
||||
|
||||
@GET
|
||||
int Get() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
return 0; // $XssSink
|
||||
}
|
||||
|
||||
@POST
|
||||
void Post() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
}
|
||||
|
||||
@Produces("text/plain") // $ProducesAnnotation=text/plain
|
||||
@DELETE
|
||||
double Delete() { // $ResourceMethod=text/plain $ResourceMethodOnResourceClass
|
||||
return 0.0; // $XssSink
|
||||
}
|
||||
|
||||
@Produces(MediaType.TEXT_HTML) // $ProducesAnnotation=text/html
|
||||
@PUT
|
||||
void Put() { // $ResourceMethod=text/html $ResourceMethodOnResourceClass
|
||||
}
|
||||
|
||||
@OPTIONS
|
||||
void Options() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
}
|
||||
|
||||
@HEAD
|
||||
void Head() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
}
|
||||
|
||||
@Path("")
|
||||
NonRootResourceClassJakarta subResourceLocator() { // $SubResourceLocator
|
||||
return null;
|
||||
}
|
||||
|
||||
public class NonRootResourceClassJakarta { // $NonRootResourceClass
|
||||
@GET
|
||||
int Get() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
return 0; // $XssSink
|
||||
}
|
||||
|
||||
@Produces("text/html") // $ProducesAnnotation=text/html
|
||||
@POST
|
||||
boolean Post() { // $ResourceMethod=text/html $ResourceMethodOnResourceClass
|
||||
return false;
|
||||
}
|
||||
|
||||
@Produces(MediaType.TEXT_PLAIN) // $ProducesAnnotation=text/plain
|
||||
@DELETE
|
||||
double Delete() { // $ResourceMethod=text/plain $ResourceMethodOnResourceClass
|
||||
return 0.0; // $XssSink
|
||||
}
|
||||
|
||||
@Path("")
|
||||
AnotherNonRootResourceClassJakarta subResourceLocator1() { // $SubResourceLocator
|
||||
return null;
|
||||
}
|
||||
|
||||
@GET
|
||||
@Path("")
|
||||
NotAResourceClass1Jakarta NotASubResourceLocator1() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
return null; // $XssSink
|
||||
}
|
||||
|
||||
@GET
|
||||
NotAResourceClass2Jakarta NotASubResourceLocator2() { // $ResourceMethod $ResourceMethodOnResourceClass
|
||||
return null; // $XssSink
|
||||
}
|
||||
|
||||
NotAResourceClass2Jakarta NotASubResourceLocator3() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class AnotherNonRootResourceClassJakarta { // $NonRootResourceClass
|
||||
public AnotherNonRootResourceClassJakarta() {
|
||||
}
|
||||
|
||||
public AnotherNonRootResourceClassJakarta(@BeanParam int beanParam, @CookieParam("") int cookieParam, @FormParam("") int formParam, // $InjectionAnnotation
|
||||
@HeaderParam("") int headerParam, @MatrixParam("") int matrixParam, @PathParam("") int pathParam, @QueryParam("") int queryParam, // $InjectionAnnotation
|
||||
@Context int context) { // $InjectionAnnotation
|
||||
}
|
||||
|
||||
@Path("")
|
||||
public void resourceMethodWithBeanParamParameter(@BeanParam FooJakarta FooJakarta) { // $SubResourceLocator $InjectionAnnotation
|
||||
}
|
||||
}
|
||||
|
||||
class FooJakarta {
|
||||
FooJakarta() { // $BeanParamConstructor
|
||||
}
|
||||
|
||||
public FooJakarta(@BeanParam int beanParam, @CookieParam("") int cookieParam, @FormParam("") int formParam, // $InjectionAnnotation $BeanParamConstructor
|
||||
@HeaderParam("") int headerParam, @MatrixParam("") int matrixParam, @PathParam("") int pathParam, @QueryParam("") int queryParam, // $InjectionAnnotation
|
||||
@Context int context) { // $InjectionAnnotation
|
||||
}
|
||||
|
||||
public FooJakarta(@BeanParam int beanParam, @CookieParam("") int cookieParam, @FormParam("") int formParam, // $InjectionAnnotation
|
||||
@HeaderParam("") int headerParam, @MatrixParam("") int matrixParam, @PathParam("") int pathParam, @QueryParam("") int queryParam, // $InjectionAnnotation
|
||||
@Context int context, int paramWithoutAnnotation) { // $InjectionAnnotation
|
||||
}
|
||||
}
|
||||
|
||||
class NotAResourceClass1Jakarta {
|
||||
}
|
||||
|
||||
class NotAResourceClass2Jakarta {
|
||||
}
|
||||
|
||||
class ExtendsJakartaRs1 extends JakartaRs1 {
|
||||
@Override
|
||||
int Get() { // $ResourceMethod
|
||||
return 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
@QueryParam("") // $InjectionAnnotation
|
||||
void Post() {
|
||||
}
|
||||
|
||||
@Override
|
||||
double Delete() { // $ResourceMethod=text/plain
|
||||
return 1.0;
|
||||
}
|
||||
|
||||
@Override
|
||||
void Put() { // $ResourceMethod=text/html
|
||||
}
|
||||
|
||||
@Produces("application/json") // $ProducesAnnotation=application/json
|
||||
@Override
|
||||
void Options() {
|
||||
}
|
||||
|
||||
@Produces(MediaType.TEXT_XML) // $ProducesAnnotation=text/xml
|
||||
@Override
|
||||
void Head() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Produces(MediaType.TEXT_XML) // $ProducesAnnotation=text/xml
|
||||
class ExtendsJakartaRs1WithProducesAnnotation extends JakartaRs1 {
|
||||
@Override
|
||||
int Get() { // $ResourceMethod=text/xml
|
||||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
@QueryParam("") // $InjectionAnnotation
|
||||
void Post() {
|
||||
}
|
||||
|
||||
@Override
|
||||
double Delete() { // $ResourceMethod=text/plain
|
||||
return 2.0;
|
||||
}
|
||||
|
||||
@Override
|
||||
void Put() { // $ResourceMethod=text/html
|
||||
}
|
||||
|
||||
@Override
|
||||
void Options() { // $ResourceMethod=text/xml
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user