Commit ffdcc987 authored by Morten Kjetland's avatar Morten Kjetland
Browse files

Refs #24 Added testcase that shows problem

parent 93bfc47a
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ import com.github.fge.jsonschema.main.JsonSchemaFactory
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaDefault
import com.kjetland.jackson.jsonSchema.testData._
import com.kjetland.jackson.jsonSchema.testData.mixin.{MixinChild1, MixinModule, MixinParent}
import com.kjetland.jackson.jsonSchema.testData_issue_24.EntityWrapper
import org.scalatest.{FunSuite, Matchers}

import scala.collection.JavaConverters._
@@ -688,6 +689,10 @@ class JsonSchemaGeneratorTest extends FunSuite with Matchers {
    }
  }

  test("issue 24") {
    val entityWrapperSchema = jsonSchemaGenerator.generateJsonSchema(classOf[EntityWrapper])
  }

}

trait TestData {
+11 −0
Original line number Diff line number Diff line
package com.kjetland.jackson.jsonSchema.testData_issue_24;

import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;

@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY)
@JsonSubTypes({ @JsonSubTypes.Type(value = Person.class, name = "Person"),
		@JsonSubTypes.Type(value = Business.class, name = "Business") })
public abstract class AbstractObject {

}
+32 −0
Original line number Diff line number Diff line
package com.kjetland.jackson.jsonSchema.testData_issue_24;

public class Address {
	private Integer number;
	private String Street;
	private Integer zip;

	public Integer getNumber() {
		return number;
	}

	public void setNumber(Integer number) {
		this.number = number;
	}

	public String getStreet() {
		return Street;
	}

	public void setStreet(String street) {
		Street = street;
	}

	public Integer getZip() {
		return zip;
	}

	public void setZip(Integer zip) {
		this.zip = zip;
	}

}
+24 −0
Original line number Diff line number Diff line
package com.kjetland.jackson.jsonSchema.testData_issue_24;


public class Business extends AbstractObject {
	private Address employment;
	private Name name;

	public Address getEmployment() {
		return employment;
	}

	public void setEmployment(Address employment) {
		this.employment = employment;
	}

	public Name getName() {
		return name;
	}

	public void setName(Name name) {
		this.name = name;
	}

}
+14 −0
Original line number Diff line number Diff line
package com.kjetland.jackson.jsonSchema.testData_issue_24;

public class EntityWrapper {
	AbstractObject objectInterface;

	public AbstractObject getObjectInterface() {
		return objectInterface;
	}

	public void setObjectInterface(AbstractObject objectInterface) {
		this.objectInterface = objectInterface;
	}

}
Loading