* 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
77 lines
2.4 KiB
JavaScript
77 lines
2.4 KiB
JavaScript
import React from "react"
|
|
import { mount } from "enzyme"
|
|
import OnlineValidatorBadge from "components/online-validator-badge"
|
|
|
|
describe("<OnlineValidatorBadge/>", function () {
|
|
it("should render a validator link and image correctly for the default validator", function () {
|
|
// When
|
|
const props = {
|
|
getConfigs: () => ({}),
|
|
getComponent: () => null,
|
|
specSelectors: {
|
|
url: () => "swagger.json"
|
|
}
|
|
}
|
|
const wrapper = mount(
|
|
<OnlineValidatorBadge {...props} />
|
|
)
|
|
|
|
// Then
|
|
expect(wrapper.find("a").props().href).toEqual(
|
|
"https://validator.swagger.io/validator/debug?url=swagger.json"
|
|
)
|
|
expect(wrapper.find("ValidatorImage").length).toEqual(1)
|
|
expect(wrapper.find("ValidatorImage").props().src).toEqual(
|
|
"https://validator.swagger.io/validator?url=swagger.json"
|
|
)
|
|
})
|
|
it("should encode a definition URL correctly", function () {
|
|
// When
|
|
const props = {
|
|
getConfigs: () => ({}),
|
|
getComponent: () => null,
|
|
specSelectors: {
|
|
url: () => "http://google.com/swagger.json"
|
|
}
|
|
}
|
|
const wrapper = mount(
|
|
<OnlineValidatorBadge {...props} />
|
|
)
|
|
|
|
// Then
|
|
expect(wrapper.find("a").props().href).toEqual(
|
|
"https://validator.swagger.io/validator/debug?url=http%3A%2F%2Fgoogle.com%2Fswagger.json"
|
|
)
|
|
expect(wrapper.find("ValidatorImage").length).toEqual(1)
|
|
expect(wrapper.find("ValidatorImage").props().src).toEqual(
|
|
"https://validator.swagger.io/validator?url=http%3A%2F%2Fgoogle.com%2Fswagger.json"
|
|
)
|
|
})
|
|
it.skip("should resolve a definition URL against the browser's location", function () {
|
|
// TODO: mock `window`
|
|
// When
|
|
|
|
const props = {
|
|
getConfigs: () => ({}),
|
|
getComponent: () => null,
|
|
specSelectors: {
|
|
url: () => "http://google.com/swagger.json"
|
|
}
|
|
}
|
|
const wrapper = mount(
|
|
<OnlineValidatorBadge {...props} />
|
|
)
|
|
|
|
// Then
|
|
expect(wrapper.find("a").props().href).toEqual(
|
|
"https://validator.swagger.io/validator/debug?url=http%3A%2F%2Fgoogle.com%2Fswagger.json"
|
|
)
|
|
expect(wrapper.find("ValidatorImage").length).toEqual(1)
|
|
expect(wrapper.find("ValidatorImage").props().src).toEqual(
|
|
"https://validator.swagger.io/validator?url=http%3A%2F%2Fgoogle.com%2Fswagger.json"
|
|
)
|
|
})
|
|
// should resolve a definition URL against the browser's location
|
|
|
|
})
|