Skip to content

Commit 5f63ff0

Browse files
authored
Stop generating tests by openapi generator (#1667)
The template file that generates code, and the template file that generates tests basically share the same logic. In short, testing generated code with the same logic is not meaningful. We already removed this in ine-bot-sdk-java. It only increases maintenance cost, so let's remove it here as well. Manual tests should be sufficient. This change also adds some tests to keep coverage.
1 parent ef44b43 commit 5f63ff0

27 files changed

Lines changed: 252 additions & 11560 deletions

File tree

generate-code.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@ def generate_webhook():
7373
'''
7474
run_command(command)
7575
run_command(f'rm -rf lib/webhook/api/')
76-
run_command(f'rm -rf lib/webhook/tests/')
7776

7877
with open('lib/webhook/api.ts', 'w') as wfp:
7978
wfp.write("""export * from './model/models.js';""")

generator/src/main/java/line/bot/generator/LineBotSdkNodejsGeneratorGenerator.java

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import io.swagger.v3.oas.models.Operation;
44
import io.swagger.v3.oas.models.media.Schema;
55
import io.swagger.v3.oas.models.responses.ApiResponse;
6-
import org.openapitools.codegen.CliOption;
76
import org.openapitools.codegen.CodegenConfig;
87
import org.openapitools.codegen.CodegenDiscriminator;
98
import org.openapitools.codegen.CodegenModel;
@@ -23,11 +22,6 @@
2322
// https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java
2423
// https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNodeClientCodegen.java
2524
public class LineBotSdkNodejsGeneratorGenerator extends TypeScriptNodeClientCodegen implements CodegenConfig {
26-
protected String outputTestFolder = "";
27-
public static final String TEST_OUTPUT = "testOutput";
28-
public static final String DEFAULT_TEST_FOLDER = "${project.build.directory}/generated-test-sources/openapi";
29-
protected String testFolder = "tests";
30-
3125
/**
3226
* Configures the type of generator.
3327
*
@@ -58,8 +52,6 @@ public LineBotSdkNodejsGeneratorGenerator() {
5852
embeddedTemplateDir = templateDir = "line-bot-sdk-nodejs-generator";
5953
typeMapping.put("file", "Blob");
6054
languageSpecificPrimitives.add("Blob");
61-
apiTestTemplateFiles.put("line-bot-sdk-nodejs-generator/api_test.pebble", ".spec.ts");
62-
cliOptions.add(CliOption.newString(TEST_OUTPUT, "Set output folder for models and APIs tests").defaultValue(DEFAULT_TEST_FOLDER));
6355
modelTemplateFiles.remove("model.mustache");
6456
modelTemplateFiles.put("line-bot-sdk-nodejs-generator/model.pebble", ".ts");
6557
apiTemplateFiles.remove("api-single.mustache");
@@ -71,33 +63,11 @@ public void processOpts() {
7163
super.processOpts();
7264
supportingFiles.clear();
7365

74-
if (additionalProperties.containsKey(TEST_OUTPUT)) {
75-
setOutputTestFolder(additionalProperties.get(TEST_OUTPUT).toString());
76-
}
77-
7866
supportingFiles.add(new SupportingFile("line-bot-sdk-nodejs-generator/models.pebble", modelPackage().replace('.', File.separatorChar), "models.ts"));
7967
supportingFiles.add(new SupportingFile("line-bot-sdk-nodejs-generator/api-all.pebble", apiPackage().replace('.', File.separatorChar), "apis.ts"));
8068
supportingFiles.add(new SupportingFile("line-bot-sdk-nodejs-generator/api.pebble", getIndexDirectory(), "api.ts"));
8169
}
8270

83-
84-
@Override
85-
public String apiTestFileFolder() {
86-
return (outputTestFolder + File.separator + testFolder + File.separator + apiPackage().replace('.', File.separatorChar)).replace('/', File.separatorChar);
87-
}
88-
89-
@Override
90-
public void setOutputDir(String dir) {
91-
super.setOutputDir(dir);
92-
if (this.outputTestFolder.isEmpty()) {
93-
setOutputTestFolder(dir);
94-
}
95-
}
96-
97-
public void setOutputTestFolder(String outputTestFolder) {
98-
this.outputTestFolder = outputTestFolder;
99-
}
100-
10171
@Override
10272
public Map<String, ModelsMap> postProcessAllModels(Map<String, ModelsMap> objs) {
10373
Map<String, ModelsMap> result = super.postProcessAllModels(objs);

generator/src/main/resources/line-bot-sdk-nodejs-generator/api_test.pebble

Lines changed: 0 additions & 225 deletions
This file was deleted.

lib/channel-access-token/.openapi-generator/FILES

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,3 @@ model/issueShortLivedChannelAccessTokenResponse.ts
99
model/issueStatelessChannelAccessTokenResponse.ts
1010
model/models.ts
1111
model/verifyChannelAccessTokenResponse.ts
12-
tests/api/ChannelAccessTokenClientTest.spec.ts

0 commit comments

Comments
 (0)