|
|
@@ -7,6 +7,7 @@ import ModelExample from "components/model-example" |
|
|
|
import Immutable from "immutable" |
|
|
|
import Model from "components/model" |
|
|
|
import ModelCollapse from "components/model-collapse" |
|
|
|
import Property from "components/property" |
|
|
|
import { inferSchema } from "corePlugins/samples/fn" |
|
|
|
|
|
|
|
describe("<ObjectModel />", function() { |
|
|
@@ -15,7 +16,8 @@ describe("<ObjectModel />", function() { |
|
|
|
"JumpToPath" : dummyComponent, |
|
|
|
"Markdown" : dummyComponent, |
|
|
|
"Model" : Model, |
|
|
|
"ModelCollapse" : ModelCollapse |
|
|
|
"ModelCollapse" : ModelCollapse, |
|
|
|
"Property" : Property |
|
|
|
} |
|
|
|
const props = { |
|
|
|
getComponent: c => components[c], |
|
|
@@ -52,6 +54,11 @@ describe("<ObjectModel />", function() { |
|
|
|
}, |
|
|
|
className: "for-test" |
|
|
|
} |
|
|
|
const propsNullable = { |
|
|
|
...props, |
|
|
|
schema: props.schema.set("nullable", true) |
|
|
|
} |
|
|
|
|
|
|
|
it("renders a collapsible header", function(){ |
|
|
|
const wrapper = shallow(<ObjectModel {...props}/>) |
|
|
|
const renderedModelCollapse = wrapper.find(ModelCollapse) |
|
|
@@ -66,4 +73,18 @@ describe("<ObjectModel />", function() { |
|
|
|
expect(renderedModel.get(1).props.schema.get("name")).toEqual("b") |
|
|
|
expect(renderedModel.get(2).props.schema.get("name")).toEqual("a") |
|
|
|
}) |
|
|
|
|
|
|
|
it("doesn't render `nullable` for model when it absent", function() { |
|
|
|
const wrapper = shallow(<ObjectModel {...props}/>) |
|
|
|
const renderProperties = wrapper.find(Property) |
|
|
|
expect(renderProperties.length).toEqual(0) |
|
|
|
}) |
|
|
|
|
|
|
|
it("renders `nullable` for model", function() { |
|
|
|
const wrapper = shallow(<ObjectModel {...propsNullable}/>) |
|
|
|
const renderProperties = wrapper.find(Property) |
|
|
|
expect(renderProperties.length).toEqual(1) |
|
|
|
expect(renderProperties.get(0).props.propKey).toEqual("nullable") |
|
|
|
expect(renderProperties.get(0).props.propVal).toEqual(true) |
|
|
|
}) |
|
|
|
}) |