* config(jest): updated setup * config(jest): update testMatch to include jsx files * config(jest): add transformIgnorePatterns * config(jest): update ignore files that do not work in jest yet * config: add test:unit-jest to test script * fix(jest): lint with eslint-plugin-jest * refactor(jest): move unit test directory * refactor(mocha): restore mocha tests that fail in jest * docs(jest): update helpful scripts with test:unit-jest
87 lines
2.4 KiB
JavaScript
87 lines
2.4 KiB
JavaScript
import React from "react"
|
|
import { fromJS } from "immutable"
|
|
import { render } from "enzyme"
|
|
import ParameterRow from "components/parameter-row"
|
|
|
|
describe("<ParameterRow/>", () => {
|
|
const createProps = ({ param, isOAS3 }) => ({
|
|
getComponent: () => "div",
|
|
specSelectors: {
|
|
parameterWithMetaByIdentity: () => param,
|
|
isOAS3: () => isOAS3,
|
|
isSwagger2: () => !isOAS3
|
|
},
|
|
oas3Selectors: { activeExamplesMember: () => {} },
|
|
param,
|
|
rawParam: param,
|
|
pathMethod: [],
|
|
getConfigs: () => ({})
|
|
})
|
|
|
|
it("Can render Swagger 2 parameter type with format", () => {
|
|
const param = fromJS({
|
|
name: "petUuid",
|
|
in: "path",
|
|
description: "UUID that identifies a pet",
|
|
type: "string",
|
|
format: "uuid"
|
|
})
|
|
|
|
const props = createProps({ param, isOAS3: false })
|
|
const wrapper = render(<ParameterRow {...props}/>)
|
|
|
|
expect(wrapper.find(".parameter__type").length).toEqual(1)
|
|
expect(wrapper.find(".parameter__type").text()).toEqual("string($uuid)")
|
|
})
|
|
|
|
it("Can render Swagger 2 parameter type without format", () => {
|
|
const param = fromJS({
|
|
name: "petId",
|
|
in: "path",
|
|
description: "ID that identifies a pet",
|
|
type: "string"
|
|
})
|
|
|
|
const props = createProps({ param, isOAS3: false })
|
|
const wrapper = render(<ParameterRow {...props}/>)
|
|
|
|
expect(wrapper.find(".parameter__type").length).toEqual(1)
|
|
expect(wrapper.find(".parameter__type").text()).toEqual("string")
|
|
})
|
|
|
|
it("Can render OAS3 parameter type with format", () => {
|
|
const param = fromJS({
|
|
name: "petUuid",
|
|
in: "path",
|
|
description: "UUID that identifies a pet",
|
|
schema: {
|
|
type: "string",
|
|
format: "uuid"
|
|
}
|
|
})
|
|
|
|
const props = createProps({ param, isOAS3: true })
|
|
const wrapper = render(<ParameterRow {...props}/>)
|
|
|
|
expect(wrapper.find(".parameter__type").length).toEqual(1)
|
|
expect(wrapper.find(".parameter__type").text()).toEqual("string($uuid)")
|
|
})
|
|
|
|
it("Can render OAS3 parameter type without format", () => {
|
|
const param = fromJS({
|
|
name: "petId",
|
|
in: "path",
|
|
description: "ID that identifies a pet",
|
|
schema: {
|
|
type: "string"
|
|
}
|
|
})
|
|
|
|
const props = createProps({ param, isOAS3: true })
|
|
const wrapper = render(<ParameterRow {...props}/>)
|
|
|
|
expect(wrapper.find(".parameter__type").length).toEqual(1)
|
|
expect(wrapper.find(".parameter__type").text()).toEqual("string")
|
|
})
|
|
})
|