style: fix indent spaces from 4 to 2 in test files (#6163)

This commit is contained in:
Tim Lai
2020-06-23 09:44:24 -07:00
committed by GitHub
parent e53d450cbc
commit faae3e9d2c
18 changed files with 1122 additions and 1214 deletions

View File

@@ -1,4 +1,4 @@
describe("bug #4445: callback-via-$ref rendering", function () { describe("bug #4409: operationId normalization and layout tracking", function () {
let mainPage let mainPage
beforeEach(function (client, done) { beforeEach(function (client, done) {
mainPage = client mainPage = client
@@ -7,7 +7,7 @@ describe("bug #4445: callback-via-$ref rendering", function () {
client.waitForElementVisible(".download-url-input:not([disabled])", 5000) client.waitForElementVisible(".download-url-input:not([disabled])", 5000)
.clearValue(".download-url-input") .clearValue(".download-url-input")
.setValue(".download-url-input", "http://localhost:3230/test-specs/bugs/4445.yaml") .setValue(".download-url-input", "http://localhost:3230/test-specs/bugs/4409.yaml")
.click("button.download-url-button") .click("button.download-url-button")
.pause(1000) .pause(1000)
@@ -16,15 +16,12 @@ describe("bug #4445: callback-via-$ref rendering", function () {
afterEach(function (client, done) { afterEach(function (client, done) {
done() done()
}) })
it("expands an operation that has a visible callback", function (client) { it("expands an operation that has a normalizable operationId", function (client) {
client.waitForElementVisible(".opblock-tag-section", 10000) client.waitForElementVisible(".opblock-tag-section", 10000)
.assert.containsText(".opblock-summary-path span", "/myApi")
.click(".opblock") .click(".opblock")
.waitForElementVisible(".opblock-body", 5000) .waitForElementVisible(".opblock-body", 5000)
.click(".opblock-section-header > .tab-header > div.tab-item:nth-of-type(2)") .assert.cssClassPresent(".opblock", "is-open")
.waitForElementVisible(".callbacks-container .opblock", 5000)
.click(".callbacks-container .opblock")
.waitForElementVisible(".callbacks-container .opblock-body", 5000)
.assert.containsText(".callbacks-container .opblock-description-wrapper:nth-of-type(2) p", "subscription payload")
client.end() client.end()
}) })

View File

@@ -1,4 +1,4 @@
describe("bug #4485: operation metadata storage when referenced via path item $ref", function () { describe("bug #4409: operationId normalization and layout tracking", function () {
let mainPage let mainPage
beforeEach(function (client, done) { beforeEach(function (client, done) {
mainPage = client mainPage = client
@@ -7,7 +7,7 @@ describe("bug #4485: operation metadata storage when referenced via path item $r
client.waitForElementVisible(".download-url-input:not([disabled])", 5000) client.waitForElementVisible(".download-url-input:not([disabled])", 5000)
.clearValue(".download-url-input") .clearValue(".download-url-input")
.setValue(".download-url-input", "http://localhost:3230/test-specs/bugs/4485/main.yaml") .setValue(".download-url-input", "http://localhost:3230/test-specs/bugs/4409.yaml")
.click("button.download-url-button") .click("button.download-url-button")
.pause(1000) .pause(1000)
@@ -16,14 +16,12 @@ describe("bug #4485: operation metadata storage when referenced via path item $r
afterEach(function (client, done) { afterEach(function (client, done) {
done() done()
}) })
it("sets a consumes value for a body parameter correctly", function (client) { it("expands an operation that has a normalizable operationId", function (client) {
client.waitForElementVisible(".opblock-tag-section", 10000) client.waitForElementVisible(".opblock-tag-section", 10000)
.assert.containsText(".opblock-summary-path span", "/myApi")
.click(".opblock") .click(".opblock")
.waitForElementVisible(".opblock-body", 5000) .waitForElementVisible(".opblock-body", 5000)
.click("button.btn.try-out__btn") .assert.cssClassPresent(".opblock", "is-open")
.click("select.content-type [value=\"application/xml\"]")
.pause(500)
.assert.value("select.content-type", "application/xml")
client.end() client.end()
}) })

View File

@@ -1,8 +1,7 @@
describe("render informationContainer", function () { describe("Render Model Wrapper", function () {
let mainPage let modelWrapper, mainPage
let informationContainer
beforeEach(function (client, done) {
beforeEach(function (client, done) {
mainPage = client mainPage = client
.url("localhost:3230") .url("localhost:3230")
.page.main() .page.main()
@@ -12,35 +11,67 @@ describe("render informationContainer", function () {
.click("button.download-url-button") .click("button.download-url-button")
.pause(1000) .pause(1000)
informationContainer = mainPage.section.informationContainer modelWrapper = mainPage.section.modelWrapper
done() done()
}) })
afterEach(function (client, done) {
it("renders section", function (client) { done()
mainPage.expect.section("@informationContainer").to.be.visible.before(5000) })
it("Render model wrapper", function (client) {
mainPage.expect.section("@modelWrapper").to.be.visible.before(5000)
client.end() client.end()
}) })
it("renders content", function (client) { it("Render model wrapper collapse", function (client) {
informationContainer.waitForElementVisible("@title", 5000) modelWrapper.waitForElementVisible("@modelContainer", 5000)
.assert.containsText("@title", "Swagger Petstore") .click("@modelCollapse")
.assert.containsText("@version", "1.0.0") .assert.cssClassNotPresent("@modelContainer", "is-open")
.assert.containsText("@baseUrl", "[ Base URL: localhost:3204/ ]")
.assert.attributeEquals("@mainUrl", "href", "http://localhost:3230/test-specs/petstore.json") client.end()
.assert.containsText("@mainUrlContent", "http://localhost:3230/test-specs/petstore.json") })
.assert.containsText("@description", "This is a sample server Petstore server. You can find out more about Swagger at http://swagger.io or on irc.freenode.net, #swagger. For this sample, you can use the api key special-key to test the authorization filters.")
.assert.attributeEquals("@swaggerUrl", "href", "http://swagger.io/") it("Testing order model", function (client) {
.assert.attributeEquals("@swaggerircUrl", "href", "http://swagger.io/irc/") modelWrapper.waitForElementVisible("@orderModel")
.assert.attributeEquals("@termsLink", "href", "http://swagger.io/terms/") .click("@orderModelCallapse")
.assert.containsText("@termsLink", "Terms of service") .assert.cssClassNotPresent("@orderModelCallapse", "callapsed")
.assert.attributeEquals("@contactDevLink", "href", "mailto:apiteam@swagger.io")
.assert.containsText("@contactDevLink", "Contact the developer") client.end()
.assert.attributeEquals("@contactDevLink", "href", "mailto:apiteam@swagger.io") })
.assert.containsText("@contactDevLink", "Contact the developer")
.assert.attributeEquals("@aboutSwaggerLink", "href", "http://swagger.io/") it("Testing category model", function (client) {
.assert.containsText("@aboutSwaggerLink", "Find out more about Swagger") modelWrapper.waitForElementVisible("@categoryModel")
.click("@categoryModelCallapse")
.assert.cssClassNotPresent("@categoryModelCallapse", "callapsed")
client.end()
})
it("Testing user model", function (client) {
modelWrapper.waitForElementVisible("@userModel")
.click("@userModelCallapse")
.assert.cssClassNotPresent("@userModelCallapse", "callapsed")
client.end()
})
it("Testing tag model", function (client) {
modelWrapper.waitForElementVisible("@tagModel")
.click("@tagModelCallapse")
.assert.cssClassNotPresent("@tagModelCallapse", "callapsed")
client.end()
})
it("Testing pet model", function (client) {
modelWrapper.waitForElementVisible("@petModel")
.click("@petModelCallapse")
.assert.cssClassNotPresent("@petModelCallapse", "callapsed")
client.end()
})
it("Testing apiResponse model", function (client) {
modelWrapper.waitForElementVisible("@apiResponseModel")
.click("@apiResponseModelCallapse")
.assert.cssClassNotPresent("@apiResponseModelCallapse", "callapsed")
client.end() client.end()
}) })

View File

@@ -15,16 +15,16 @@ describe("Render Model Wrapper", function () {
done() done()
}) })
afterEach(function (client, done){ afterEach(function (client, done) {
done() done()
}) })
it("Render model wrapper", function(client){ it("Render model wrapper", function (client) {
mainPage.expect.section("@modelWrapper").to.be.visible.before(5000) mainPage.expect.section("@modelWrapper").to.be.visible.before(5000)
client.end() client.end()
}) })
it("Render model wrapper collapse", function(client){ it("Render model wrapper collapse", function (client) {
modelWrapper.waitForElementVisible("@modelContainer", 5000) modelWrapper.waitForElementVisible("@modelContainer", 5000)
.click("@modelCollapse") .click("@modelCollapse")
.assert.cssClassNotPresent("@modelContainer", "is-open") .assert.cssClassNotPresent("@modelContainer", "is-open")
@@ -32,7 +32,7 @@ describe("Render Model Wrapper", function () {
client.end() client.end()
}) })
it("Testing order model", function(client){ it("Testing order model", function (client) {
modelWrapper.waitForElementVisible("@orderModel") modelWrapper.waitForElementVisible("@orderModel")
.click("@orderModelCallapse") .click("@orderModelCallapse")
.assert.cssClassNotPresent("@orderModelCallapse", "callapsed") .assert.cssClassNotPresent("@orderModelCallapse", "callapsed")
@@ -40,35 +40,35 @@ describe("Render Model Wrapper", function () {
client.end() client.end()
}) })
it("Testing category model", function(client){ it("Testing category model", function (client) {
modelWrapper.waitForElementVisible("@categoryModel") modelWrapper.waitForElementVisible("@categoryModel")
.click("@categoryModelCallapse") .click("@categoryModelCallapse")
.assert.cssClassNotPresent("@categoryModelCallapse", "callapsed") .assert.cssClassNotPresent("@categoryModelCallapse", "callapsed")
client.end() client.end()
}) })
it("Testing user model", function(client){ it("Testing user model", function (client) {
modelWrapper.waitForElementVisible("@userModel") modelWrapper.waitForElementVisible("@userModel")
.click("@userModelCallapse") .click("@userModelCallapse")
.assert.cssClassNotPresent("@userModelCallapse", "callapsed") .assert.cssClassNotPresent("@userModelCallapse", "callapsed")
client.end() client.end()
}) })
it("Testing tag model", function(client){ it("Testing tag model", function (client) {
modelWrapper.waitForElementVisible("@tagModel") modelWrapper.waitForElementVisible("@tagModel")
.click("@tagModelCallapse") .click("@tagModelCallapse")
.assert.cssClassNotPresent("@tagModelCallapse", "callapsed") .assert.cssClassNotPresent("@tagModelCallapse", "callapsed")
client.end() client.end()
}) })
it("Testing pet model", function(client){ it("Testing pet model", function (client) {
modelWrapper.waitForElementVisible("@petModel") modelWrapper.waitForElementVisible("@petModel")
.click("@petModelCallapse") .click("@petModelCallapse")
.assert.cssClassNotPresent("@petModelCallapse", "callapsed") .assert.cssClassNotPresent("@petModelCallapse", "callapsed")
client.end() client.end()
}) })
it("Testing apiResponse model", function(client){ it("Testing apiResponse model", function (client) {
modelWrapper.waitForElementVisible("@apiResponseModel") modelWrapper.waitForElementVisible("@apiResponseModel")
.click("@apiResponseModelCallapse") .click("@apiResponseModelCallapse")
.assert.cssClassNotPresent("@apiResponseModelCallapse", "callapsed") .assert.cssClassNotPresent("@apiResponseModelCallapse", "callapsed")

View File

@@ -1,4 +1,4 @@
describe("render pet api container", function () { describe("render store api container", function () {
let mainPage let mainPage
let apiWrapper let apiWrapper
beforeEach(function (client, done) { beforeEach(function (client, done) {
@@ -19,196 +19,93 @@ describe("render pet api container", function () {
afterEach(function (client, done) { afterEach(function (client, done) {
done() done()
}) })
it("render section", function (client) { it("test rendered store container", function (client) {
mainPage.expect.section("@apiWrapper").to.be.visible.before(10000) apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000)
client.end() .expect.element("@storeAPIWrapper").to.be.visible
})
it("test rendered pet container", function (client) {
apiWrapper.waitForElementVisible("@petAPIWrapper", 5000)
.expect.element("@petAPIWrapper").to.be.visible
client.end() client.end()
}) })
it("collapse pet wrapper", function (client) { it("callapse store wrapper", function (client) {
apiWrapper.waitForElementVisible("@petAPIWrapper", 5000) apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000)
.click("@petAPIWrapperBar") .click("@storeAPIWrapperBar")
.assert.cssClassNotPresent("@petAPIWrapper", "is-open") .assert.cssClassNotPresent("@storeAPIWrapper", "is-open")
client.end() client.end()
}) })
it("render post /pet api container", function (client) { it("render get /store/inventory api container", function (client) {
apiWrapper.waitForElementVisible("@petOperationPostContainer", 10000) apiWrapper.waitForElementVisible("@storeOperationGetContainer", 5000)
.assert.containsText("@petOperationPostTitle", "/pet") .assert.containsText("@storeOperationGetTitle", "/store/inventory")
.click("@petOperationPostCollpase") .click("@storeOperationGetCollpase")
.waitForElementVisible("@petOperationPostCollapseContainer", 5000) .waitForElementVisible("@storeOperationGetCollapseContainer", 5000)
.click("@petOperationPostTryBtn") .click("@storeOperationGetTryBtn")
.waitForElementVisible("@petOperationPostTryText", 1000) .waitForElementVisible("@storeOperationGetExecuteBtn", 1000)
.waitForElementVisible("@petOperationPostExecuteBtn", 1000) .click("@storeOperationGetTryBtn")
.click("@petOperationPostTryBtn") .assert.cssClassNotPresent("@storeOperationGetTryBtn", "cancel")
.assert.cssClassNotPresent("@petOperationPostTryBtn", "cancel")
client.end() client.end()
}) })
it("Testing post /pet api Mock data", function (client) { it("Testing get /store/inventory api Mock data ", function (client) {
apiWrapper.waitForElementVisible("@petOperationPostContainer", 5000) apiWrapper.waitForElementVisible("@storeOperationGetContainer", 5000)
.click("@petOperationPostCollpase") .assert.containsText("@storeOperationGetTitle", "/store/inventory")
.waitForElementVisible("@petOperationPostCollapseContainer", 5000) .click("@storeOperationGetCollpase")
.click("@petOperationPostTryBtn") .waitForElementVisible("@storeOperationGetCollapseContainer", 3000)
.waitForElementVisible("@petOperationPostExecuteBtn", 1000) .click("@storeOperationGetTryBtn")
.click("@petOperationPostExecuteBtn") .waitForElementVisible("@storeOperationGetExecuteBtn", 1000)
.waitForElementVisible("@petOperationPostMockCategoryID", 2000) .click("@storeOperationGetExecuteBtn")
.assert.containsText("@petOperationPostMockCategoryID", "0") .waitForElementVisible("@storeOperationResponseProps1")
.assert.containsText("@petOperationPostMockCategoryName", "\"string\"") .assert.containsText("@storeOperationResponseProps1", "0")
.assert.containsText("@petOperationPostMockName", "\"doggie\"") .assert.containsText("@storeOperationResponseProps2", "0")
.assert.containsText("@petOperationPostTagID", "0") .assert.containsText("@storeOperationResponseProps3", "0")
.assert.containsText("@petOperationPostTagName", "\"string\"") .click("@storeOperationGetTryBtn")
.assert.containsText("@petOperationPostStatus", "\"available\"") .assert.cssClassNotPresent("@storeOperationGetTryBtn", "cancel")
.click("@petOperationPostTryBtn")
.assert.cssClassNotPresent("@petOperationPostTryBtn", "cancel")
client.end() client.end()
}) })
it("Testing post /pet api model values", function (client) { it("render post /store/order api container", function (client) {
apiWrapper.waitForElementVisible("@petOperationPostContainer", 5000) apiWrapper.waitForElementVisible("@storeOperationPostContainer")
.click("@petOperationPostCollpase") .assert.containsText("@storeOperationPostTitle", "/store/order")
.waitForElementVisible("@petOperationPostCollapseContainer", 5000) .click("@storeOperationPostCollpase")
.click("a.tablinks[data-name=model]") .waitForElementVisible("@storeOperationPostCollapseContainer", 3000)
.assert.containsText("span.model-title > .model-title__text", `Pet`) .click("@storeOperationPostTryBtn")
.waitForElementVisible("@storeOperationPostExecuteBtn", 1000)
.click("@storeOperationPostTryBtn")
.assert.cssClassNotPresent("@storeOperationPostTryBtn", "cancel")
client.end() client.end()
}) })
it("render put /pet api container", function (client) { it("Testing post /store/order api Mock Data", function (client) {
apiWrapper.waitForElementVisible("@petOperationPutContainer", 5000) apiWrapper.waitForElementVisible("@storeOperationPostContainer")
.assert.containsText("@petOperationPutTitle", "/pet") .assert.containsText("@storeOperationPostTitle", "/store/order")
.click("@petOperationPutCollpase") .click("@storeOperationPostCollpase")
.waitForElementVisible("@petOperationPutCollapseContainer", 3000) .waitForElementVisible("@storeOperationPostCollapseContainer", 3000)
.click("@petOperationPutTryBtn") .click("@storeOperationPostTryBtn")
.waitForElementVisible("@petOperationPutTryText", 1000) .waitForElementVisible("@storeOperationPostExecuteBtn", 1000)
.waitForElementVisible("@petOperationPutExecuteBtn", 1000) .click("@storeOperationPostExecuteBtn")
.click("@petOperationPutTryBtn") .waitForElementVisible("@storeOperationPostResponseId")
.assert.cssClassNotPresent("@petOperationPutTryBtn", "cancel") .assert.containsText("@storeOperationPostResponseId", "0")
.assert.containsText("@storeOperationPostResponsePetId", "0")
.assert.containsText("@storeOperationPostResponseQuantity", "0")
.assert.containsText("@storeOperationPostResponseStatus", "placed")
.assert.containsText("@storeOperationPostResponseComplete", "false")
.click("@storeOperationPostTryBtn")
.assert.cssClassNotPresent("@storeOperationPostTryBtn", "cancel")
client.end() client.end()
}) })
it("render delete /store/order/{orderId} api container", function (client) {
it("Testing put /pet api Mock data", function (client) { apiWrapper.waitForElementVisible("@storeOperationDeleteContainer")
apiWrapper.waitForElementVisible("@petOperationPutContainer", 5000) .assert.containsText("@storeOperationDeleteTitle", "/store/order/{orderId}")
.click("@petOperationPutCollpase") .click("@storeOperationDeleteCollpase")
.waitForElementVisible("@petOperationPutCollapseContainer", 3000) .waitForElementVisible("@storeOperationDeleteCollapseContainer", 3000)
.click("@petOperationPutTryBtn") .click("@storeOperationDeleteTryBtn")
.waitForElementVisible("@petOperationPutExecuteBtn", 1000) .waitForElementVisible("@storeOperationDeleteExecuteBtn", 1000)
.click("@petOperationPutExecuteBtn") .click("@storeOperationDeleteExecuteBtn")
.waitForElementVisible("@petOperationPutMockCategoryID") .waitForElementVisible("@storeOperationGetResponseHeaders", "content-type: application/xml")
.assert.containsText("@petOperationPutMockCategoryID", "0") .click("@storeOperationDeleteTryBtn")
.assert.containsText("@petOperationPutMockCategoryName", "\"string\"") .assert.cssClassNotPresent("@storeOperationDeleteTryBtn", "cancel")
.assert.containsText("@petOperationPutMockName", "\"doggie\"")
.assert.containsText("@petOperationPutTagID", "0")
.assert.containsText("@petOperationPutTagName", "\"string\"")
.assert.containsText("@petOperationPutStatus", "\"available\"")
.click("@petOperationPutTryBtn")
.assert.cssClassNotPresent("@petOperationPutTryBtn", "Cancel")
client.end()
})
it("render get by tag /pet api container", function (client) {
apiWrapper.waitForElementVisible("@petOperationGetByTagContainer", 5000)
.assert.containsText("@petOperationGetByTagTitle", "/pet/findByTags")
.click("@petOperationGetByTagCollpase")
.waitForElementVisible("@petOperationGetByTagCollapseContainer", 3000)
.click("@petOperationGetByTagTryBtn")
.waitForElementVisible("@petOperationGetByTagTryAdded", 1000)
.waitForElementVisible("@petOperationGetByTagExecuteBtn", 1000)
.click("@petOperationGetByTagTryBtn")
.assert.cssClassNotPresent("@petOperationGetByTagTryBtn", "cancel")
client.end()
})
it("Testing get by tag /pet api Mock data", function (client) {
apiWrapper.waitForElementVisible("@petOperationGetByTagContainer", 5000)
.click("@petOperationGetByTagCollpase")
.waitForElementVisible("@petOperationGetByTagCollapseContainer", 3000)
.click("@petOperationGetByTagTryBtn")
.waitForElementVisible("@petOperationGetByTagExecuteBtn", 1000)
.click("@petOperationGetByTagExecuteBtn")
.waitForElementVisible("@petOperationGetByTagMockCategoryID")
.assert.containsText("@petOperationGetByTagMockCategoryID", "0")
.assert.containsText("@petOperationGetByTagMockCategoryName", "\"string\"")
.assert.containsText("@petOperationGetByTagMockName", "\"doggie\"")
.assert.containsText("@petOperationGetByTagTagID", "0")
.assert.containsText("@petOperationGetByTagTagName", "\"string\"")
.assert.containsText("@petOperationGetByTagStatus", "\"available\"")
.click("@petOperationGetByTagTryBtn")
.assert.cssClassNotPresent("@petOperationGetByTagTryBtn", "cancel")
client.end()
})
it("render get by ID /pet/{petId} api container", function (client) {
apiWrapper.waitForElementVisible("@petOperationGetByIdContainer", 5000)
.assert.containsText("@petOperationGetByIdTitle", "/pet/{petId}")
.click("@petOperationGetByIdCollpase")
.waitForElementVisible("@petOperationGetByIdCollapseContainer", 3000)
.click("@petOperationGetByIdTryBtn")
.waitForElementVisible("@petOperationGetByTagExecuteBtn", 1000)
.click("@petOperationGetByTagTryBtn")
.assert.cssClassNotPresent("@petOperationGetByTagTryBtn", "cancel")
client.end()
})
it("render get by ID /pet/{petId} api Mock data", function (client) {
apiWrapper.waitForElementVisible("@petOperationGetByIdContainer", 5000)
.assert.containsText("@petOperationGetByIdTitle", "/pet/{petId}")
.click("@petOperationGetByIdCollpase")
.waitForElementVisible("@petOperationGetByIdCollapseContainer", 3000)
.click("@petOperationGetByIdTryBtn")
.waitForElementVisible("@petOperationGetByTagExecuteBtn", 1000)
.setValue("@petOperationGetByIdParameter", "abc")
.click("@petOperationGetByIdExecuteBtn")
.waitForElementVisible("@petOperationGetByIdResultsBox")
.assert.containsText("@petOperationGetByIdParameter", "abc")
.assert.cssClassPresent("@petOperationGetByIdParameter", "invalid")
.assert.attributeEquals("@petOperationGetByIdParameter", "title", "Value must be an integer")
.click("@petOperationGetByTagTryBtn")
.assert.cssClassNotPresent("@petOperationGetByTagTryBtn", "cancel")
client.end()
})
it("render delete /pet api container", function (client) {
apiWrapper.waitForElementVisible("@petOperationDeleteContainer")
.assert.containsText("@petOperationDeleteTitle", "/pet/{petId}")
.click("@petOperationDeleteCollpase")
.waitForElementVisible("@petOperationDeleteCollapseContainer", 3000)
.click("@petOperationDeleteTryBtn")
.waitForElementVisible("@petOperationDeleteExecuteBtn", 1000)
.click("@petOperationDeleteTryBtn")
.assert.cssClassNotPresent("@petOperationDeleteTryBtn", "cancel")
client.end()
})
it("Testing delete /pet api Mock data", function (client) {
apiWrapper.waitForElementVisible("@petOperationDeleteContainer", 3000)
.click("@petOperationDeleteCollpase")
.waitForElementVisible("@petOperationDeleteCollapseContainer", 3000)
.click("@petOperationDeleteTryBtn")
.waitForElementVisible("@petOperationDeleteExecuteBtn", 1000)
.click("@petOperationDeleteExecuteBtn")
.waitForElementVisible("@petOperationDeleteMockCategoryID")
.assert.containsText("@petOperationDeleteMockCategoryID", "0")
.assert.containsText("@petOperationDeleteMockCategoryName", "\"string\"")
.assert.containsText("@petOperationDeleteMockName", "\"doggie\"")
.assert.containsText("@petOperationDeleteTagID", "0")
.assert.containsText("@petOperationDeleteTagName", "\"string\"")
.assert.containsText("@petOperationDeleteStatus", "\"available\"")
.click("@petOperationDeleteTryBtn")
.assert.cssClassNotPresent("@petOperationDeleteTryBtn", "cancel")
client.end() client.end()
}) })

View File

@@ -1,7 +1,7 @@
describe("render store api container", function(){ describe("render store api container", function () {
let mainPage let mainPage
let apiWrapper let apiWrapper
beforeEach( function(client, done){ beforeEach(function (client, done) {
mainPage = client mainPage = client
.url("localhost:3230") .url("localhost:3230")
.page.main() .page.main()
@@ -19,13 +19,13 @@ describe("render store api container", function(){
afterEach(function (client, done) { afterEach(function (client, done) {
done() done()
}) })
it("test rendered store container", function(client){ it("test rendered store container", function (client) {
apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000) apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000)
.expect.element("@storeAPIWrapper").to.be.visible .expect.element("@storeAPIWrapper").to.be.visible
client.end() client.end()
}) })
it("callapse store wrapper", function(client){ it("callapse store wrapper", function (client) {
apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000) apiWrapper.waitForElementVisible("@storeAPIWrapper", 5000)
.click("@storeAPIWrapperBar") .click("@storeAPIWrapperBar")
.assert.cssClassNotPresent("@storeAPIWrapper", "is-open") .assert.cssClassNotPresent("@storeAPIWrapper", "is-open")

View File

@@ -1,92 +1,77 @@
describe("render user api container", function(){ describe("Render Model Wrapper", function () {
let mainPage let modelWrapper, mainPage
let apiWrapper
beforeEach( function(client, done){ beforeEach(function (client, done) {
mainPage = client mainPage = client
.url("localhost:3230") .url("localhost:3230")
.page.main() .page.main()
client.waitForElementVisible(".download-url-input:not([disabled])", 5000) client.waitForElementVisible(".download-url-input:not([disabled])", 5000)
.clearValue(".download-url-input") .clearValue(".download-url-input")
.setValue(".download-url-input", "http://localhost:3230/test-specs/petstore.json") .setValue(".download-url-input", "http://localhost:3230/test-specs/petstore.json")
.click("button.download-url-button") .click("button.download-url-button")
.pause(1000) .pause(1000)
apiWrapper = mainPage.section.apiWrapper modelWrapper = mainPage.section.modelWrapper
done() done()
}) })
afterEach(function (client, done) { afterEach(function (client, done) {
done() done()
}) })
it("test rendered user container", function(client){ it("Render model wrapper", function (client) {
apiWrapper.waitForElementVisible("@userAPIWrapper", 5000) mainPage.expect.section("@modelWrapper").to.be.visible.before(5000)
.expect.element("@userAPIWrapper").to.be.visible
client.end() client.end()
}) })
it("callapse user wrapper", function(client){
apiWrapper.waitForElementVisible("@userAPIWrapper", 5000) it("Render model wrapper collapse", function (client) {
.click("@userAPIWrapperBar") modelWrapper.waitForElementVisible("@modelContainer", 5000)
.assert.cssClassNotPresent("@userAPIWrapper", "is-open") .click("@modelCollapse")
.assert.cssClassNotPresent("@modelContainer", "is-open")
client.end() client.end()
}) })
it("render put /user/{username} api container", function (client) {
apiWrapper.waitForElementVisible("@userOperationPutContainer", 5000) it("Testing order model", function (client) {
.assert.containsText("@userOperationPutTitle", "/user/{username}") modelWrapper.waitForElementVisible("@orderModel")
.click("@userOperationPutCollpase") .click("@orderModelCallapse")
.waitForElementVisible("@userOperationPutCollapseContainer", 3000) .assert.cssClassNotPresent("@orderModelCallapse", "callapsed")
.click("@userOperationPutTryBtn")
.waitForElementVisible("@userOperationPutExecuteBtn", 1000)
.click("@userOperationPutTryBtn")
.assert.cssClassNotPresent("@userOperationPutTryBtn", "cancel")
client.end() client.end()
}) })
it("Test put /user/{username} api Mock data", function (client) {
apiWrapper.waitForElementVisible("@userOperationPutContainer", 5000) it("Testing category model", function (client) {
.assert.containsText("@userOperationPutTitle", "/user/{username}") modelWrapper.waitForElementVisible("@categoryModel")
.click("@userOperationPutCollpase") .click("@categoryModelCallapse")
.waitForElementVisible("@userOperationPutCollapseContainer", 3000) .assert.cssClassNotPresent("@categoryModelCallapse", "callapsed")
.click("@userOperationPutTryBtn")
.waitForElementVisible("@userOperationPutParameter")
.setValue("@userOperationPutParameter", "123")
.waitForElementVisible("@userOperationPutExecuteBtn", 1000)
.click("userOperationPutExecuteBtn")
.waitForElementVisible("@userOperationPutResponseHeader")
.assert.containsText("@userOperationPutResponseHeader", "content-type: application/xml")
.click("@userOperationPutTryBtn")
.assert.cssClassNotPresent("@userOperationPutTryBtn", "cancel")
client.end() client.end()
}) })
it("render delete /user/{username} api container", function (client) { it("Testing user model", function (client) {
apiWrapper.waitForElementVisible("@userOperationDeleteContainer", 5000) modelWrapper.waitForElementVisible("@userModel")
.assert.containsText("@userOperationDeleteTitle", "/user/{username}") .click("@userModelCallapse")
.click("@userOperationDeleteCollpase") .assert.cssClassNotPresent("@userModelCallapse", "callapsed")
.waitForElementVisible("@userOperationDeleteCollapseContainer", 3000)
.click("@userOperationDeleteTryBtn")
.waitForElementVisible("@userOperationDeleteExecuteBtn", 1000)
.click("@userOperationDeleteTryBtn")
.assert.cssClassNotPresent("@userOperationDeleteTryBtn", "cancel")
client.end() client.end()
}) })
it("Test delete /user/{username} api Mock data", function (client) { it("Testing tag model", function (client) {
apiWrapper.waitForElementVisible("@userOperationDeleteContainer", 5000) modelWrapper.waitForElementVisible("@tagModel")
.assert.containsText("@userOperationDeleteTitle", "/user/{username}") .click("@tagModelCallapse")
.click("@userOperationDeleteCollpase") .assert.cssClassNotPresent("@tagModelCallapse", "callapsed")
.waitForElementVisible("@userOperationDeleteCollapseContainer", 3000)
.click("@userOperationDeleteTryBtn") client.end()
.waitForElementVisible("@userOperationDeleteParameter") })
.setValue("@userOperationDeleteParameter", "123") it("Testing pet model", function (client) {
.waitForElementVisible("@userOperationDeleteExecuteBtn", 1000) modelWrapper.waitForElementVisible("@petModel")
.click("userOperationDeleteExecuteBtn") .click("@petModelCallapse")
.waitForElementVisible("@userOperationDeleteResponseHeader") .assert.cssClassNotPresent("@petModelCallapse", "callapsed")
.assert.containsText("@userOperationDeleteResponseHeader", "content-type: application/xml")
.click("@userOperationDeleteTryBtn") client.end()
.assert.cssClassNotPresent("@userOperationDeleteTryBtn", "cancel") })
it("Testing apiResponse model", function (client) {
modelWrapper.waitForElementVisible("@apiResponseModel")
.click("@apiResponseModelCallapse")
.assert.cssClassNotPresent("@apiResponseModelCallapse", "callapsed")
client.end() client.end()
}) })

View File

@@ -37,7 +37,7 @@ describe("Render scheme", function () {
client.end() client.end()
}) })
it("render click event", function(client) { it("render click event", function (client) {
schemeContainer.waitForElementVisible("@btnAuthorize", 5000) schemeContainer.waitForElementVisible("@btnAuthorize", 5000)
.click("@btnAuthorize") .click("@btnAuthorize")
.assert.visible("@authorizationModal") .assert.visible("@authorizationModal")

View File

@@ -5,47 +5,47 @@ import { render } from "enzyme"
import Markdown from "components/providers/markdown" import Markdown from "components/providers/markdown"
import { Markdown as OAS3Markdown } from "corePlugins/oas3/wrap-components/markdown.jsx" import { Markdown as OAS3Markdown } from "corePlugins/oas3/wrap-components/markdown.jsx"
describe("Markdown component", function() { describe("Markdown component", function () {
describe("Swagger 2.0", function() { describe("Swagger 2.0", function () {
it("allows elements with class, style and data-* attribs", function() { it("allows elements with class, style and data-* attribs", function () {
const getConfigs = () => ({ useUnsafeMarkdown: true }) const getConfigs = () => ({ useUnsafeMarkdown: true })
const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>` const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>`
const el = render(<Markdown source={str} getConfigs={getConfigs} />) const el = render(<Markdown source={str} getConfigs={getConfigs} />)
expect(el.html()).toEqual(`<div class="markdown"><p><span data-attr="value" style="border-width: 1px" class="method">ONE</span></p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p><span data-attr="value" style="border-width: 1px" class="method">ONE</span></p>\n</div>`)
}) })
it("strips class, style and data-* attribs from elements", function() { it("strips class, style and data-* attribs from elements", function () {
const getConfigs = () => ({ useUnsafeMarkdown: false }) const getConfigs = () => ({ useUnsafeMarkdown: false })
const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>` const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>`
const el = render(<Markdown source={str} getConfigs={getConfigs} />) const el = render(<Markdown source={str} getConfigs={getConfigs} />)
expect(el.html()).toEqual(`<div class="markdown"><p><span>ONE</span></p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p><span>ONE</span></p>\n</div>`)
}) })
it("allows td elements with colspan attrib", function() { it("allows td elements with colspan attrib", function () {
const str = `<table><tr><td>ABC</td></tr></table>` const str = `<table><tr><td>ABC</td></tr></table>`
const el = render(<Markdown source={str} />) const el = render(<Markdown source={str} />)
expect(el.html()).toEqual(`<div class="markdown"><table><tbody><tr><td>ABC</td></tr></tbody></table></div>`) expect(el.html()).toEqual(`<div class="markdown"><table><tbody><tr><td>ABC</td></tr></tbody></table></div>`)
}) })
it("allows image elements", function() { it("allows image elements", function () {
const str = `![Image alt text](http://image.source "Image title")` const str = `![Image alt text](http://image.source "Image title")`
const el = render(<Markdown source={str} />) const el = render(<Markdown source={str} />)
expect(el.html()).toEqual(`<div class="markdown"><p><img title="Image title" alt="Image alt text" src="http://image.source"></p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p><img title="Image title" alt="Image alt text" src="http://image.source"></p>\n</div>`)
}) })
it("allows image elements with https scheme", function() { it("allows image elements with https scheme", function () {
const str = `![Image alt text](https://image.source "Image title")` const str = `![Image alt text](https://image.source "Image title")`
const el = render(<Markdown source={str} />) const el = render(<Markdown source={str} />)
expect(el.html()).toEqual(`<div class="markdown"><p><img title="Image title" alt="Image alt text" src="https://image.source"></p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p><img title="Image title" alt="Image alt text" src="https://image.source"></p>\n</div>`)
}) })
it("allows image elements with data scheme", function() { it("allows image elements with data scheme", function () {
const str = `<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==">` const str = `<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==">`
const el = render(<Markdown source={str} />) const el = render(<Markdown source={str} />)
expect(el.html()).toEqual(`<div class="markdown"><p>` + str + `</p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p>` + str + `</p>\n</div>`)
}) })
it("allows heading elements", function() { it("allows heading elements", function () {
const str = ` const str = `
# h1 # h1
## h2 ## h2
@@ -57,47 +57,47 @@ describe("Markdown component", function() {
expect(el.html()).toEqual(`<div class="markdown"><h1>h1</h1>\n<h2>h2</h2>\n<h3>h3</h3>\n<h4>h4</h4>\n<h5>h5</h5>\n<h6>h6</h6>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><h1>h1</h1>\n<h2>h2</h2>\n<h3>h3</h3>\n<h4>h4</h4>\n<h5>h5</h5>\n<h6>h6</h6>\n</div>`)
}) })
it("allows links", function() { it("allows links", function () {
const str = `[Link](https://example.com/)` const str = `[Link](https://example.com/)`
const el = render(<Markdown source={str} />) const el = render(<Markdown source={str} />)
expect(el.html()).toEqual(`<div class="markdown"><p><a rel="noopener noreferrer" target="_blank" href="https://example.com/">Link</a></p>\n</div>`) expect(el.html()).toEqual(`<div class="markdown"><p><a rel="noopener noreferrer" target="_blank" href="https://example.com/">Link</a></p>\n</div>`)
}) })
}) })
describe("OAS 3", function() { describe("OAS 3", function () {
it("allows elements with class, style and data-* attribs", function() { it("allows elements with class, style and data-* attribs", function () {
const getConfigs = () => ({ useUnsafeMarkdown: true }) const getConfigs = () => ({ useUnsafeMarkdown: true })
const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>` const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>`
const el = render(<OAS3Markdown source={str} getConfigs={getConfigs} />) const el = render(<OAS3Markdown source={str} getConfigs={getConfigs} />)
expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><span data-attr="value" style="border-width: 1px" class="method">ONE</span></p></div>`) expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><span data-attr="value" style="border-width: 1px" class="method">ONE</span></p></div>`)
}) })
it("strips class, style and data-* attribs from elements", function() { it("strips class, style and data-* attribs from elements", function () {
const getConfigs = () => ({ useUnsafeMarkdown: false }) const getConfigs = () => ({ useUnsafeMarkdown: false })
const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>` const str = `<span class="method" style="border-width: 1px" data-attr="value">ONE</span>`
const el = render(<OAS3Markdown source={str} getConfigs={getConfigs} />) const el = render(<OAS3Markdown source={str} getConfigs={getConfigs} />)
expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><span>ONE</span></p></div>`) expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><span>ONE</span></p></div>`)
}) })
it("allows image elements", function() { it("allows image elements", function () {
const str = `![Image alt text](http://image.source "Image title")` const str = `![Image alt text](http://image.source "Image title")`
const el = render(<OAS3Markdown source={str} />) const el = render(<OAS3Markdown source={str} />)
expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><img title="Image title" alt="Image alt text" src="http://image.source"></p></div>`) expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><img title="Image title" alt="Image alt text" src="http://image.source"></p></div>`)
}) })
it("allows image elements with https scheme", function() { it("allows image elements with https scheme", function () {
const str = `![Image alt text](https://image.source "Image title")` const str = `![Image alt text](https://image.source "Image title")`
const el = render(<OAS3Markdown source={str} />) const el = render(<OAS3Markdown source={str} />)
expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><img title="Image title" alt="Image alt text" src="https://image.source"></p></div>`) expect(el.html()).toEqual(`<div class="renderedMarkdown"><p><img title="Image title" alt="Image alt text" src="https://image.source"></p></div>`)
}) })
it("allows image elements with data scheme", function() { it("allows image elements with data scheme", function () {
const str = `<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==">` const str = `<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==">`
const el = render(<OAS3Markdown source={str} />) const el = render(<OAS3Markdown source={str} />)
expect(el.html()).toEqual(`<div class="renderedMarkdown"><p>` + str + `</p></div>`) expect(el.html()).toEqual(`<div class="renderedMarkdown"><p>` + str + `</p></div>`)
}) })
it("allows heading elements", function() { it("allows heading elements", function () {
const str = ` const str = `
# h1 # h1
## h2 ## h2

View File

@@ -5,8 +5,8 @@ import { shallow } from "enzyme"
import { fromJS } from "immutable" import { fromJS } from "immutable"
import PrimitiveModel from "components/primitive-model" import PrimitiveModel from "components/primitive-model"
describe("<PrimitiveModel/>", function() { describe("<PrimitiveModel/>", function () {
describe("Model name", function() { describe("Model name", function () {
const dummyComponent = () => null const dummyComponent = () => null
const components = { const components = {
Markdown: dummyComponent, Markdown: dummyComponent,
@@ -25,28 +25,28 @@ describe("<PrimitiveModel/>", function() {
}) })
} }
it("renders the schema's title", function() { it("renders the schema's title", function () {
// When // When
const wrapper = shallow(<PrimitiveModel {...props}/>) const wrapper = shallow(<PrimitiveModel {...props} />)
const modelTitleEl = wrapper.find("span.model-title") const modelTitleEl = wrapper.find("span.model-title")
expect(modelTitleEl.length).toEqual(1) expect(modelTitleEl.length).toEqual(1)
// Then // Then
expect( modelTitleEl.text() ).toEqual( "Custom model title" ) expect(modelTitleEl.text()).toEqual("Custom model title")
}) })
it("falls back to the passed-in `name` prop for the title", function() { it("falls back to the passed-in `name` prop for the title", function () {
// When // When
props.schema = fromJS({ props.schema = fromJS({
type: "string" type: "string"
}) })
const wrapper = shallow(<PrimitiveModel {...props}/>) const wrapper = shallow(<PrimitiveModel {...props} />)
const modelTitleEl = wrapper.find("span.model-title") const modelTitleEl = wrapper.find("span.model-title")
expect(modelTitleEl.length).toEqual(1) expect(modelTitleEl.length).toEqual(1)
// Then // Then
expect( modelTitleEl.text() ).toEqual( "Name from props" ) expect(modelTitleEl.text()).toEqual("Name from props")
}) })
}) })
} ) })

View File

@@ -3,7 +3,7 @@ import expect from "expect"
import { shallow } from "enzyme" import { shallow } from "enzyme"
import ResponseBody from "components/response-body" import ResponseBody from "components/response-body"
describe("<ResponseBody />", function() { describe("<ResponseBody />", function () {
const highlightCodeComponent = () => null const highlightCodeComponent = () => null
const components = { const components = {
highlightCode: highlightCodeComponent highlightCode: highlightCodeComponent
@@ -12,31 +12,31 @@ describe("<ResponseBody />", function() {
getComponent: c => components[c], getComponent: c => components[c],
} }
it("renders ResponseBody as 'application/json'", function() { it("renders ResponseBody as 'application/json'", function () {
props.contentType = "application/json" props.contentType = "application/json"
props.content = "{\"key\": \"a test value\"}" props.content = "{\"key\": \"a test value\"}"
const wrapper = shallow(<ResponseBody {...props}/>) const wrapper = shallow(<ResponseBody {...props} />)
expect(wrapper.find("highlightCodeComponent").length).toEqual(1) expect(wrapper.find("highlightCodeComponent").length).toEqual(1)
}) })
it("renders ResponseBody as 'text/html'", function() { it("renders ResponseBody as 'text/html'", function () {
props.contentType = "application/json" props.contentType = "application/json"
props.content = "<b>Result</b>" props.content = "<b>Result</b>"
const wrapper = shallow(<ResponseBody {...props}/>) const wrapper = shallow(<ResponseBody {...props} />)
expect(wrapper.find("highlightCodeComponent").length).toEqual(1) expect(wrapper.find("highlightCodeComponent").length).toEqual(1)
}) })
it("renders ResponseBody as 'image/svg'", function() { it("renders ResponseBody as 'image/svg'", function () {
props.contentType = "image/svg" props.contentType = "image/svg"
const wrapper = shallow(<ResponseBody {...props}/>) const wrapper = shallow(<ResponseBody {...props} />)
console.warn(wrapper.debug()) console.warn(wrapper.debug())
expect(wrapper.find("highlightCodeComponent").length).toEqual(0) expect(wrapper.find("highlightCodeComponent").length).toEqual(0)
}) })
it("should render a copyable highlightCodeComponent for text types", function() { it("should render a copyable highlightCodeComponent for text types", function () {
props.contentType = "text/plain" props.contentType = "text/plain"
props.content = "test text" props.content = "test text"
const wrapper = shallow(<ResponseBody {...props}/>) const wrapper = shallow(<ResponseBody {...props} />)
console.warn(wrapper.debug()) console.warn(wrapper.debug())
expect(wrapper.find("highlightCodeComponent[canCopy]").length).toEqual(1) expect(wrapper.find("highlightCodeComponent[canCopy]").length).toEqual(1)
}) })

View File

@@ -6,7 +6,7 @@ import Response from "components/response"
import ModelExample from "components/model-example" import ModelExample from "components/model-example"
import { inferSchema } from "corePlugins/samples/fn" import { inferSchema } from "corePlugins/samples/fn"
describe("<Response />", function() { describe("<Response />", function () {
const dummyComponent = () => null const dummyComponent = () => null
const components = { const components = {
headers: dummyComponent, headers: dummyComponent,
@@ -49,13 +49,13 @@ describe("<Response />", function() {
code: "200" code: "200"
} }
it("renders the model-example schema properties in order", function() { it("renders the model-example schema properties in order", function () {
const wrapper = shallow(<Response {...props}/>) const wrapper = shallow(<Response {...props} />)
const renderedModelExample = wrapper.find(ModelExample) const renderedModelExample = wrapper.find(ModelExample)
expect(renderedModelExample.length).toEqual(1) expect(renderedModelExample.length).toEqual(1)
// Assert the schema's properties have maintained their order // Assert the schema's properties have maintained their order
const modelExampleSchemaProperties = renderedModelExample.props().schema.toJS().properties const modelExampleSchemaProperties = renderedModelExample.props().schema.toJS().properties
expect( Object.keys(modelExampleSchemaProperties) ).toEqual(["c", "b", "a"]) expect(Object.keys(modelExampleSchemaProperties)).toEqual(["c", "b", "a"])
}) })
}) })

View File

@@ -3,9 +3,9 @@ import Im from "immutable"
import curl from "core/curlify" import curl from "core/curlify"
import win from "core/window" import win from "core/window"
describe("curlify", function() { describe("curlify", function () {
it("prints a curl statement with custom content-type", function() { it("prints a curl statement with custom content-type", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -25,7 +25,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"Accept: application/json\" -H \"content-type: application/json\" -d {\"id\":0,\"name\":\"doggie\",\"status\":\"available\"}") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"Accept: application/json\" -H \"content-type: application/json\" -d {\"id\":0,\"name\":\"doggie\",\"status\":\"available\"}")
}) })
it("does add a empty data param if no request body given", function() { it("does add a empty data param if no request body given", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -36,7 +36,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -d \"\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -d \"\"")
}) })
it("does not change the case of header in curl", function() { it("does not change the case of header in curl", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -50,7 +50,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"conTenT Type: application/Moar\" -d \"\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"conTenT Type: application/Moar\" -d \"\"")
}) })
it("prints a curl statement with an array of query params", function() { it("prints a curl statement with an array of query params", function () {
var req = { var req = {
url: "http://swaggerhub.com/v1/one?name=john|smith", url: "http://swaggerhub.com/v1/one?name=john|smith",
method: "GET" method: "GET"
@@ -61,7 +61,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\"") expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\"")
}) })
it("prints a curl statement with an array of query params and auth", function() { it("prints a curl statement with an array of query params and auth", function () {
var req = { var req = {
url: "http://swaggerhub.com/v1/one?name=john|smith", url: "http://swaggerhub.com/v1/one?name=john|smith",
method: "GET", method: "GET",
@@ -75,7 +75,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"authorization: Basic Zm9vOmJhcg==\"") expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"authorization: Basic Zm9vOmJhcg==\"")
}) })
it("prints a curl statement with html", function() { it("prints a curl statement with html", function () {
var req = { var req = {
url: "http://swaggerhub.com/v1/one?name=john|smith", url: "http://swaggerhub.com/v1/one?name=john|smith",
method: "GET", method: "GET",
@@ -92,7 +92,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"accept: application/json\" -d {\"description\":\"<b>Test</b>\"}") expect(curlified).toEqual("curl -X GET \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"accept: application/json\" -d {\"description\":\"<b>Test</b>\"}")
}) })
it("handles post body with html", function() { it("handles post body with html", function () {
var req = { var req = {
url: "http://swaggerhub.com/v1/one?name=john|smith", url: "http://swaggerhub.com/v1/one?name=john|smith",
method: "POST", method: "POST",
@@ -109,7 +109,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"accept: application/json\" -d {\"description\":\"<b>Test</b>\"}") expect(curlified).toEqual("curl -X POST \"http://swaggerhub.com/v1/one?name=john|smith\" -H \"accept: application/json\" -d {\"description\":\"<b>Test</b>\"}")
}) })
it("handles post body with special chars", function() { it("handles post body with special chars", function () {
var req = { var req = {
url: "http://swaggerhub.com/v1/one?name=john|smith", url: "http://swaggerhub.com/v1/one?name=john|smith",
method: "POST", method: "POST",
@@ -124,7 +124,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://swaggerhub.com/v1/one?name=john|smith\" -d {\"description\":\"@prefix nif:<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/nif-core#> .@prefix itsrdf: <http://www.w3.org/2005/11/its/rdf#> .\"}") expect(curlified).toEqual("curl -X POST \"http://swaggerhub.com/v1/one?name=john|smith\" -d {\"description\":\"@prefix nif:<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/nif-core#> .@prefix itsrdf: <http://www.w3.org/2005/11/its/rdf#> .\"}")
}) })
it("handles delete form with parameters", function() { it("handles delete form with parameters", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "DELETE", method: "DELETE",
@@ -138,7 +138,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X DELETE \"http://example.com\" -H \"accept: application/x-www-form-urlencoded\"") expect(curlified).toEqual("curl -X DELETE \"http://example.com\" -H \"accept: application/x-www-form-urlencoded\"")
}) })
it("should print a curl with formData", function() { it("should print a curl with formData", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -154,7 +154,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"name=Sahar\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"name=Sahar\"")
}) })
it("should print a curl with formData that extracts array representation with hashIdx", function() { it("should print a curl with formData that extracts array representation with hashIdx", function () {
// Note: hashIdx = `_**[]${counter}` // Note: hashIdx = `_**[]${counter}`
// Usage of hashIdx is an internal SwaggerUI method to convert formData array into something curlify can handle // Usage of hashIdx is an internal SwaggerUI method to convert formData array into something curlify can handle
const req = { const req = {
@@ -174,7 +174,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"fruits[]=apple\" -F \"fruits[]=banana\" -F \"fruits[]=grape\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"fruits[]=apple\" -F \"fruits[]=banana\" -F \"fruits[]=grape\"")
}) })
it("should print a curl with formData and file", function() { it("should print a curl with formData and file", function () {
var file = new win.File() var file = new win.File()
file.name = "file.txt" file.name = "file.txt"
file.type = "text/plain" file.type = "text/plain"
@@ -194,7 +194,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"file=@file.txt;type=text/plain\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"file=@file.txt;type=text/plain\"")
}) })
it("should print a curl without form data type if type is unknown", function() { it("should print a curl without form data type if type is unknown", function () {
var file = new win.File() var file = new win.File()
file.name = "file.txt" file.name = "file.txt"
file.type = "" file.type = ""
@@ -214,7 +214,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"file=@file.txt\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"content-type: multipart/form-data\" -F \"id=123\" -F \"file=@file.txt\"")
}) })
it("prints a curl post statement from an object", function() { it("prints a curl post statement from an object", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -231,7 +231,7 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"accept: application/json\" -d {\"id\":10101}") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"accept: application/json\" -d {\"id\":10101}")
}) })
it("prints a curl post statement from a string containing a single quote", function() { it("prints a curl post statement from a string containing a single quote", function () {
var req = { var req = {
url: "http://example.com", url: "http://example.com",
method: "POST", method: "POST",
@@ -246,9 +246,9 @@ describe("curlify", function() {
expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"accept: application/json\" -d \"{\\\"id\\\":\\\"foo'bar\\\"}\"") expect(curlified).toEqual("curl -X POST \"http://example.com\" -H \"accept: application/json\" -d \"{\\\"id\\\":\\\"foo'bar\\\"}\"")
}) })
context("given multiple entries with file", function() { context("given multiple entries with file", function () {
context("and with leading custom header", function() { context("and with leading custom header", function () {
it("should print a proper curl -F", function() { it("should print a proper curl -F", function () {
let file = new win.File() let file = new win.File()
file.name = "file.txt" file.name = "file.txt"
file.type = "text/plain" file.type = "text/plain"
@@ -272,8 +272,8 @@ describe("curlify", function() {
}) })
}) })
context("and with trailing custom header; e.g. from requestInterceptor appending req.headers", function() { context("and with trailing custom header; e.g. from requestInterceptor appending req.headers", function () {
it("should print a proper curl -F", function() { it("should print a proper curl -F", function () {
let file = new win.File() let file = new win.File()
file.name = "file.txt" file.name = "file.txt"
file.type = "text/plain" file.type = "text/plain"
@@ -298,8 +298,8 @@ describe("curlify", function() {
}) })
}) })
context("POST when header value is 'multipart/form-data' but header name is not 'content-type'", function() { context("POST when header value is 'multipart/form-data' but header name is not 'content-type'", function () {
it("shoud print a proper curl as -d <data>", function() { it("shoud print a proper curl as -d <data>", function () {
let file = new win.File() let file = new win.File()
file.name = "file.txt" file.name = "file.txt"
file.type = "text/plain" file.type = "text/plain"