diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3acb80b0..3b6d0c15 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ We love contributions from our community of users! This document explains our gu #### Environment setup -0. Install Node.js (4 or newer) and npm (3 or newer). +0. Install Node.js (6 or newer) and npm (3 or newer). 1. Make a fork of Swagger-UI on GitHub, then clone your fork to your machine. 2. Run `npm install` in your Swagger-UI directory. 3. Run `npm run dev`. `localhost:3200` should open automatically. diff --git a/test/components/object-model.js b/test/components/object-model.js new file mode 100644 index 00000000..d926d04c --- /dev/null +++ b/test/components/object-model.js @@ -0,0 +1,63 @@ +import React from "react" +import expect from "expect" +import { shallow } from "enzyme" +import { fromJS } from "immutable" +import ObjectModel from "components/object-model" +import ModelExample from "components/model-example" +import Immutable from "immutable" +import Model from "components/model" +import ModelCollapse from "components/model-collapse" +import { inferSchema } from "corePlugins/samples/fn" + +describe("", function() { + const dummyComponent = () => null + const components = { + "JumpToPath" : dummyComponent, + "Markdown" : dummyComponent, + "Model" : Model, + "ModelCollapse" : ModelCollapse + } + const props = { + getComponent: c => components[c], + isRef : false, + schema: Immutable.fromJS( + { + "properties": { + // Note reverse order: c, b, a + c: { + type: "integer", + name: "c" + }, + b: { + type: "boolean", + name: "b" + }, + a: { + type: "string", + name: "a" + } + } + } + ), + specSelectors: { + isOAS3(){ + return false + } + }, + className: "for-test" + } + it("renders a collapsible header", function(){ + const wrapper = shallow() + const renderedModelCollapse = wrapper.find(ModelCollapse) + expect(renderedModelCollapse.length).toEqual(1) + }) + + it("renders the object properties in order", function() { + const wrapper = shallow() + const renderedModel = wrapper.find(Model) + expect(renderedModel.length).toEqual(3) + expect(renderedModel.get(0).props.schema.get("name")).toEqual("c") + expect(renderedModel.get(1).props.schema.get("name")).toEqual("b") + expect(renderedModel.get(2).props.schema.get("name")).toEqual("a") + }) +})