fix: incorrect usage of lodash.lowerCase (via #4200)
* Wrong usage of https://lodash.com/docs/4.17.5#lowerCase * Add basic tests about ResponseBody Content-Type
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
import React from "react"
|
import React from "react"
|
||||||
import PropTypes from "prop-types"
|
import PropTypes from "prop-types"
|
||||||
import formatXml from "xml-but-prettier"
|
import formatXml from "xml-but-prettier"
|
||||||
import lowerCase from "lodash/lowerCase"
|
import toLower from "lodash/toLower"
|
||||||
import { extractFileNameFromContentDispositionHeader } from "core/utils"
|
import { extractFileNameFromContentDispositionHeader } from "core/utils"
|
||||||
import win from "core/window"
|
import win from "core/window"
|
||||||
|
|
||||||
@@ -110,7 +110,7 @@ export default class ResponseBody extends React.PureComponent {
|
|||||||
bodyEl = <HighlightCode downloadable fileName={`${downloadName}.xml`} value={ body } />
|
bodyEl = <HighlightCode downloadable fileName={`${downloadName}.xml`} value={ body } />
|
||||||
|
|
||||||
// HTML or Plain Text
|
// HTML or Plain Text
|
||||||
} else if (lowerCase(contentType) === "text/html" || /text\/plain/.test(contentType)) {
|
} else if (toLower(contentType) === "text/html" || /text\/plain/.test(contentType)) {
|
||||||
bodyEl = <HighlightCode downloadable fileName={`${downloadName}.html`} value={ content } />
|
bodyEl = <HighlightCode downloadable fileName={`${downloadName}.html`} value={ content } />
|
||||||
|
|
||||||
// Image
|
// Image
|
||||||
|
|||||||
36
test/components/response-body.js
Normal file
36
test/components/response-body.js
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
import React from "react"
|
||||||
|
import expect from "expect"
|
||||||
|
import { shallow } from "enzyme"
|
||||||
|
import ResponseBody from "components/response-body"
|
||||||
|
import { inferSchema } from "corePlugins/samples/fn"
|
||||||
|
|
||||||
|
describe("<ResponseBody />", function() {
|
||||||
|
const highlightCodeComponent = () => null
|
||||||
|
const components = {
|
||||||
|
highlightCode: highlightCodeComponent
|
||||||
|
}
|
||||||
|
const props = {
|
||||||
|
getComponent: c => components[c],
|
||||||
|
}
|
||||||
|
|
||||||
|
it("renders ResponseBody as 'application/json'", function() {
|
||||||
|
props.contentType = "application/json"
|
||||||
|
props.content = "{\"key\": \"a test value\"}"
|
||||||
|
const wrapper = shallow(<ResponseBody {...props}/>)
|
||||||
|
expect(wrapper.find("highlightCodeComponent").length).toEqual(1)
|
||||||
|
})
|
||||||
|
|
||||||
|
it("renders ResponseBody as 'text/html'", function() {
|
||||||
|
props.contentType = "application/json"
|
||||||
|
props.content = "<b>Result</b>"
|
||||||
|
const wrapper = shallow(<ResponseBody {...props}/>)
|
||||||
|
expect(wrapper.find("highlightCodeComponent").length).toEqual(1)
|
||||||
|
})
|
||||||
|
|
||||||
|
it("renders ResponseBody as 'image/svg'", function() {
|
||||||
|
props.contentType = "image/svg"
|
||||||
|
const wrapper = shallow(<ResponseBody {...props}/>)
|
||||||
|
console.warn(wrapper.debug())
|
||||||
|
expect(wrapper.find("highlightCodeComponent").length).toEqual(0)
|
||||||
|
})
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user