diff --git a/lib/codegen/fromcto/java/javavisitor.js b/lib/codegen/fromcto/java/javavisitor.js index a3f296cf..a7fb0d31 100644 --- a/lib/codegen/fromcto/java/javavisitor.js +++ b/lib/codegen/fromcto/java/javavisitor.js @@ -145,6 +145,11 @@ class JavaVisitor { property.accept(this, parameters); }); + parameters.fileWriter.writeLine(1, '@Override'); + parameters.fileWriter.writeLine(1, 'public String toString() {'); + parameters.fileWriter.writeLine(2, 'return name();'); + parameters.fileWriter.writeLine(1, '}'); + parameters.fileWriter.writeLine(0, '}' ); this.endClassFile(enumDeclaration, parameters); diff --git a/test/codegen/__snapshots__/codegen.js.snap b/test/codegen/__snapshots__/codegen.js.snap index 91be777d..abb8a388 100644 --- a/test/codegen/__snapshots__/codegen.js.snap +++ b/test/codegen/__snapshots__/codegen.js.snap @@ -973,6 +973,10 @@ public enum State { WA, IL, CA, + @Override + public String toString() { + return name(); + } } ", } @@ -990,6 +994,10 @@ public enum TShirtSizeType { SMALL, MEDIUM, LARGE, + @Override + public String toString() { + return name(); + } } ", } @@ -1141,6 +1149,10 @@ public enum Department { HR, Engineering, Design, + @Override + public String toString() { + return name(); + } } ", } @@ -1196,6 +1208,10 @@ import com.fasterxml.jackson.annotation.*; public enum LaptopMake { Apple, Microsoft, + @Override + public String toString() { + return name(); + } } ", } @@ -7091,6 +7107,10 @@ public enum State { WA, IL, CA, + @Override + public String toString() { + return name(); + } } ", } @@ -7108,6 +7128,10 @@ public enum TShirtSizeType { SMALL, MEDIUM, LARGE, + @Override + public String toString() { + return name(); + } } ", } @@ -7259,6 +7283,10 @@ public enum Department { HR, Engineering, Design, + @Override + public String toString() { + return name(); + } } ", } @@ -7314,6 +7342,10 @@ import com.fasterxml.jackson.annotation.*; public enum LaptopMake { Apple, Microsoft, + @Override + public String toString() { + return name(); + } } ", } diff --git a/test/codegen/fromcto/java/javavisitor.js b/test/codegen/fromcto/java/javavisitor.js index 7ed6f004..f0d4d010 100644 --- a/test/codegen/fromcto/java/javavisitor.js +++ b/test/codegen/fromcto/java/javavisitor.js @@ -243,11 +243,16 @@ describe('JavaVisitor', function () { javaVisit.visitEnumDeclaration(mockEnumDeclaration, param); mockStartClassFile.withArgs(mockEnumDeclaration, param).calledOnce.should.be.ok; - param.fileWriter.writeLine.callCount.should.deep.equal(4); + param.fileWriter.writeLine.callCount.should.deep.equal(8); + param.fileWriter.writeLine.getCall(0).args.should.deep.equal([0, 'import com.fasterxml.jackson.annotation.*;']); param.fileWriter.writeLine.getCall(1).args.should.deep.equal([0, '@JsonIgnoreProperties({"$class"})']); param.fileWriter.writeLine.getCall(2).args.should.deep.equal([0, 'public enum Bob {']); - param.fileWriter.writeLine.getCall(3).args.should.deep.equal([0, '}']); + param.fileWriter.writeLine.getCall(3).args.should.deep.equal([1, '@Override']); + param.fileWriter.writeLine.getCall(4).args.should.deep.equal([1, 'public String toString() {']); + param.fileWriter.writeLine.getCall(5).args.should.deep.equal([2, 'return name();']); + param.fileWriter.writeLine.getCall(6).args.should.deep.equal([1, '}']); + param.fileWriter.writeLine.getCall(7).args.should.deep.equal([0, '}']); mockEndClassFile.withArgs(mockEnumDeclaration, param).calledOnce.should.be.ok; }); });