kotlin-spring.api_test.mustache Maven / Gradle / Ivy
package {{package}}
{{#imports}}import {{import}}
{{/imports}}
import org.junit.jupiter.api.Test
{{#reactive}}
import kotlinx.coroutines.flow.Flow;
import kotlinx.coroutines.test.runBlockingTest
{{/reactive}}
import org.springframework.http.ResponseEntity
class {{classname}}Test {
{{#serviceInterface}}private val service: {{classname}}Service = {{classname}}ServiceImpl(){{/serviceInterface}}
private val api: {{classname}}Controller = {{classname}}Controller({{#serviceInterface}}service{{/serviceInterface}})
{{#operations}}{{#operation}}
/**
* {{summary}}
*
* {{notes}}
*
* @throws ApiException
* if the Api call fails
*/
@Test
fun {{operationId}}Test() {{#reactive}}= runBlockingTest {{/reactive}}{
{{#allParams}}
val {{paramName}}:{{{dataType}}}? = null
{{/allParams}}
val response: ResponseEntity<{{>returnTypes}}> = api.{{operationId}}({{#allParams}}{{paramName}}!!{{^-last}}, {{/-last}}{{/allParams}})
// TODO: test validations
}
{{/operation}}{{/operations}}
}