mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-10-14 16:33:56 +00:00
* added my fork from https://github.com/Place1/swagger-codegen-typescript-browser * ran bin/typescript-fetch-petstore-all.sh * use FormData.append rather than .set for IE11 compat * reverted change to licenseInfo.mustache * reverted some comments * added package.json and tsconfig.json back to the generator * added support for blob (application/octet-stream) responses * models and apis are now in folders * added support for modelPropertyNaming based on the spec * bug fix * updated samples * Restore pom.xml for typescript project * Restore samples/client/petstore/typescript-fetch/tests/default/package.json ≈ * added support for response type Date conversion * updated samples * Rework pom in "samples.ci" * Restore "samples/client/petstore/typescript-fetch/tests/default" * updated configuration class to use property getters to allow clients to implement configuration values as getters * added {{datatype}}ToJSON functions to handle serialization and naming conversions * fixed missing import * fixed compilation error. updated samples * 1 character change to get CI to run again * updated samples * added support for array type request body * updated tests * support for optional request bodies * updated models json converters to handle undefined inputs (to simplify usage in optional contexts like optional request bodies) * updated samples * updated tests * changed to typescript version 2.4 * updated samples * support for optional properties being null, undefined or omitted * updated samples * bug fix * bug fix * updated samples * ran npm install in test project * patch to get tests running * added support for retrieving raw response. added support for binary request bodies. added support for blob data type for files/binary.
58 lines
1.9 KiB
Kotlin
58 lines
1.9 KiB
Kotlin
package org.openapitools.generator.gradle.plugin
|
|
|
|
import org.gradle.testkit.runner.GradleRunner
|
|
import org.gradle.testkit.runner.TaskOutcome
|
|
import org.testng.annotations.Test
|
|
import java.io.File
|
|
import kotlin.test.assertEquals
|
|
import kotlin.test.assertTrue
|
|
|
|
class MetaTaskDslTest : TestBase() {
|
|
override var temp: File = createTempDir(javaClass.simpleName)
|
|
|
|
@Test
|
|
fun `openApiMeta should generate desired project contents`() {
|
|
// Arrange
|
|
val buildDirReplacement = "\$buildDir/meta"
|
|
withProject("""
|
|
| plugins {
|
|
| id 'org.openapi.generator'
|
|
| }
|
|
|
|
|
| openApiMeta {
|
|
| generatorName = "Sample"
|
|
| packageName = "org.openapitools.example"
|
|
| outputFolder = "$buildDirReplacement".toString()
|
|
| }
|
|
""".trimMargin())
|
|
|
|
// Act
|
|
val result = GradleRunner.create()
|
|
.withProjectDir(temp)
|
|
.withArguments("openApiMeta")
|
|
.withPluginClasspath()
|
|
.build()
|
|
|
|
// Assert
|
|
assertTrue(result.output.contains("Wrote file to"), "User friendly write notice is missing.")
|
|
|
|
// To avoid any OS-specific output causing issues with our stdout comparisons, only compare on expected filenames.
|
|
listOf(
|
|
"SampleGenerator.java",
|
|
"README.md",
|
|
"api.mustache",
|
|
"model.mustache",
|
|
"myFile.mustache",
|
|
"org.openapitools.codegen.CodegenConfig",
|
|
"pom.xml"
|
|
).map {
|
|
assertTrue(result.output.contains(it), "Expected $it to be listed in gradle stdout.")
|
|
}
|
|
|
|
assertEquals(
|
|
TaskOutcome.SUCCESS,
|
|
result.task(":openApiMeta")?.outcome,
|
|
"Expected a successful run, but found ${result.task(":openApiMeta")?.outcome}"
|
|
)
|
|
}
|
|
} |