Skip to content

Commit e21c849

Browse files
committed
Skip test sources during OpenAPI export to prevent spec overwriting
1 parent e208543 commit e21c849

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

openapi-build-extension/src/main/java/io/ballerina/openapi/build/HttpServiceAnalysisTask.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@
3333
import io.ballerina.openapi.service.mapper.model.ServiceDeclaration;
3434
import io.ballerina.openapi.service.mapper.model.ServiceNode;
3535
import io.ballerina.projects.BuildOptions;
36+
import io.ballerina.projects.DocumentId;
37+
import io.ballerina.projects.Module;
38+
import io.ballerina.projects.ModuleId;
3639
import io.ballerina.projects.Package;
3740
import io.ballerina.projects.Project;
3841
import io.ballerina.projects.plugins.AnalysisTask;
@@ -78,6 +81,16 @@ static void setIsWarningPrinted() {
7881

7982
@Override
8083
public void perform(SyntaxNodeAnalysisContext context) {
84+
ModuleId moduleId = context.moduleId();
85+
DocumentId documentId = context.documentId();
86+
Module currentModule = context.currentPackage() != null ? context.currentPackage().module(moduleId) : null;
87+
88+
if (moduleId != null && documentId != null && currentModule != null &&
89+
currentModule.testDocumentIds() != null &&
90+
currentModule.testDocumentIds().contains(documentId)) {
91+
// Skip test documents
92+
return;
93+
}
8194
SemanticModel semanticModel = context.semanticModel();
8295
SyntaxTree syntaxTree = context.syntaxTree();
8396
Package currentPackage = context.currentPackage();

0 commit comments

Comments
 (0)