Commit 93bfc47a authored by Morten Kjetland's avatar Morten Kjetland
Browse files

Fixes #21 Preserving order of enum-values

parent 96b464b7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -157,7 +157,7 @@ class JsonSchemaGenerator
      val enumValuesNode = JsonNodeFactory.instance.arrayNode()
      _node.set("enum", enumValuesNode)

      enums.asScala.toSet[String].foreach {
      enums.asScala.foreach {
        enumValue =>
          enumValuesNode.add(enumValue)
      }
+2 −2
Original line number Diff line number Diff line
@@ -162,7 +162,7 @@ class JsonSchemaGeneratorTest extends FunSuite with Matchers {

  test("Generate scheme for plain class not using @JsonTypeInfo") {

    val enumList = List("C","B","A")
    val enumList = MyEnum.values().toList.map(_.toString)

    {

@@ -351,7 +351,7 @@ class JsonSchemaGeneratorTest extends FunSuite with Matchers {
      assert(getRequiredList(schema).contains("_doublePrimitive")) // Must be required since it must have a value - not null

      assert(schema.at("/properties/myEnum/type").asText() == "string")
      assert(getArrayNodeAsListOfStrings(schema.at("/properties/myEnum/enum")) == List("C", "B", "A"))
      assert(getArrayNodeAsListOfStrings(schema.at("/properties/myEnum/enum")) == MyEnum.values().toList.map(_.toString))
    }

    // scala
+1 −1
Original line number Diff line number Diff line
package com.kjetland.jackson.jsonSchema.testData;

public enum MyEnum {
    C,B,A
    E,B,A,D,C
}