From e9d94e02d8ab45f418fb75be9a08cc1197cb972d Mon Sep 17 00:00:00 2001 From: feenr Date: Mon, 6 Nov 2017 10:43:43 -0500 Subject: [PATCH 01/10] Add new tests for object-model --- test/components/object-model.js | 69 +++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 test/components/object-model.js diff --git a/test/components/object-model.js b/test/components/object-model.js new file mode 100644 index 00000000..8cc44d2a --- /dev/null +++ b/test/components/object-model.js @@ -0,0 +1,69 @@ +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 callapsible 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) + + // Assert the schema's properties have maintained their order + //const modelExampleSchemaProperties = renderedModel.props().schema.toJS().properties + console.log(renderedModel.get(0).props); + + 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") + //expect( Object.keySeq(modelExampleSchemaProperties) ).toEqual(["c", "b", "a"]) + }) +}) \ No newline at end of file From 7fe07591b285179334b53cf9228b92117a92d345 Mon Sep 17 00:00:00 2001 From: feenr Date: Mon, 6 Nov 2017 12:32:32 -0500 Subject: [PATCH 02/10] Update the pre-req version of node in CONTRIBUTING.md --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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. From bcad5b583e7edcc87b94ecf79dd1bd41b97d10b5 Mon Sep 17 00:00:00 2001 From: feenr Date: Mon, 6 Nov 2017 12:41:14 -0500 Subject: [PATCH 03/10] Remove commented out and debug code --- test/components/object-model.js | 6 ------ 1 file changed, 6 deletions(-) diff --git a/test/components/object-model.js b/test/components/object-model.js index 8cc44d2a..7d85cc92 100644 --- a/test/components/object-model.js +++ b/test/components/object-model.js @@ -56,14 +56,8 @@ describe("", function() { const wrapper = shallow() const renderedModel = wrapper.find(Model) expect(renderedModel.length).toEqual(3) - - // Assert the schema's properties have maintained their order - //const modelExampleSchemaProperties = renderedModel.props().schema.toJS().properties - console.log(renderedModel.get(0).props); - 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") - //expect( Object.keySeq(modelExampleSchemaProperties) ).toEqual(["c", "b", "a"]) }) }) \ No newline at end of file From 6664058dbeb21175165c412ffe44c748b7ab224d Mon Sep 17 00:00:00 2001 From: "takaaki.iida" Date: Tue, 7 Nov 2017 19:53:25 +0900 Subject: [PATCH 04/10] https://github.com/swagger-api/swagger-ui/issues/3871 adding a key prop to solve React.js warning --- src/plugins/topbar/topbar.jsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/plugins/topbar/topbar.jsx b/src/plugins/topbar/topbar.jsx index 211ab5b8..32b2a34f 100644 --- a/src/plugins/topbar/topbar.jsx +++ b/src/plugins/topbar/topbar.jsx @@ -112,7 +112,7 @@ export default class Topbar extends React.Component { }) control.push( -