@@ -82,4 +82,82 @@ class MethodWriterSpec extends Specification {
8282"""
8383 }
8484
85+ void " head method" () {
86+ def dataTypeName = new DataTypeName (' java.lang.String' , ' java.lang.String' )
87+
88+ def endpoint = createEndpoint (path : ' /foo' , method : HttpMethod . HEAD , responses : [
89+ ' 200' : [new EmptyResponse ()]
90+ ], parameters : [
91+ new QueryParameter (' foo' , new MappedDataType (
92+ ' String' ,
93+ ' java.util' ,
94+ [],
95+ null ,
96+ false ,
97+ true
98+ ), false , false , null )
99+ ])
100+
101+ when :
102+ writer. write (target, endpoint, endpoint. endpointResponses. first ())
103+
104+ then :
105+ target. toString () == """ \
106+ @RequestMapping(path = "${ endpoint.path} ", method = RequestMethod.HEAD)
107+ void headFoo(@RequestParam(name = "foo", required = false) String foo);
108+ """
109+ }
110+
111+ void " trace method" () {
112+ def dataTypeName = new DataTypeName (' java.lang.String' , ' java.lang.String' )
113+
114+ def endpoint = createEndpoint (path : ' /foo' , method : HttpMethod . TRACE , responses : [
115+ ' 200' : [new EmptyResponse ()]
116+ ], parameters : [
117+ new QueryParameter (' foo' , new MappedDataType (
118+ ' String' ,
119+ ' java.util' ,
120+ [],
121+ null ,
122+ false ,
123+ true
124+ ), false , false , null )
125+ ])
126+
127+ when :
128+ writer. write (target, endpoint, endpoint. endpointResponses. first ())
129+
130+ then :
131+ target. toString () == """ \
132+ @RequestMapping(path = "${ endpoint.path} ", method = RequestMethod.TRACE)
133+ void traceFoo(@RequestParam(name = "foo", required = false) String foo);
134+ """
135+ }
136+
137+ void " option method" () {
138+ def dataTypeName = new DataTypeName (' java.lang.String' , ' java.lang.String' )
139+
140+ def endpoint = createEndpoint (path : ' /foo' , method : HttpMethod . OPTIONS , responses : [
141+ ' 200' : [new EmptyResponse ()]
142+ ], parameters : [
143+ new QueryParameter (' foo' , new MappedDataType (
144+ ' String' ,
145+ ' java.util' ,
146+ [],
147+ null ,
148+ false ,
149+ true
150+ ), false , false , null )
151+ ])
152+
153+ when :
154+ writer. write (target, endpoint, endpoint. endpointResponses. first ())
155+
156+ then :
157+ target. toString () == """ \
158+ @RequestMapping(path = "${ endpoint.path} ", method = RequestMethod.OPTIONS)
159+ void optionsFoo(@RequestParam(name = "foo", required = false) String foo);
160+ """
161+ }
162+
85163}
0 commit comments