chore(deps-dev): update cypress to v12 (#8889)
This update required changing the configuration and test directory structure. Some tests needed to be amended as well to compensate for new Cypress APIs.
This commit is contained in:
835
test/e2e-cypress/e2e/features/schema-form.cy.js
Normal file
835
test/e2e-cypress/e2e/features/schema-form.cy.js
Normal file
@@ -0,0 +1,835 @@
|
||||
/**
|
||||
* @prettier
|
||||
*/
|
||||
|
||||
describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => {
|
||||
describe("incomplete API definition with missing schema key or schema value(s)", () => {
|
||||
describe("parameter exists as global", () => {
|
||||
it("should render when parameter exists as global, but missing schema key", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_no_schema")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists as global, but missing all schema values", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_no_type_or_format")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists as global, schema key exists, but missing schema values: format", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_format_only_no_type")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists as global, schema key exists, but missing schema value: type", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_type_only_no_format")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
})
|
||||
describe("parameter exists in method", () => {
|
||||
it("should render when parameter exists in method, but missing schema key", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_two_no_schema")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists in method, schema key exists, but missing all schema values", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_two_no_type_or_format")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists in method, schema key exists, but missing schema value: format", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_type_only_no_format")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
it("should render when parameter exists in method, schema key exists, but missing schema value: type", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-missing-values.yaml")
|
||||
.get("#operations-default-get_case_one_format_only_no_type")
|
||||
.click()
|
||||
.get(".opblock-description .renderedMarkdown p")
|
||||
.should("have.text", "sf")
|
||||
})
|
||||
})
|
||||
})
|
||||
describe("/Array", () => {
|
||||
describe("in a Parameter", () => {
|
||||
it("should allow modification of values in Try-It-Out", () => {
|
||||
cy.visit(
|
||||
"/?url=/documents/features/multiple-examples-core.openapi.yaml"
|
||||
)
|
||||
.get("#operations-default-post_Array")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.select("ArrayExampleB")
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}5")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"1",
|
||||
"2",
|
||||
"3",
|
||||
"4",
|
||||
"5",
|
||||
])
|
||||
})
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.find(":selected")
|
||||
.should("have.text", "[Modified value]")
|
||||
})
|
||||
it("should allow removal of added value in Try-It-Out", () => {
|
||||
cy.visit(
|
||||
"/?url=/documents/features/multiple-examples-core.openapi.yaml"
|
||||
)
|
||||
.get("#operations-default-post_Array")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.select("ArrayExampleB")
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}5")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"1",
|
||||
"2",
|
||||
"3",
|
||||
"4",
|
||||
"5",
|
||||
])
|
||||
})
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.find(":selected")
|
||||
.should("have.text", "[Modified value]")
|
||||
// Remove the last item that was just added
|
||||
.get(
|
||||
".json-schema-form-item:last-of-type > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"1",
|
||||
"2",
|
||||
"3",
|
||||
"4",
|
||||
])
|
||||
})
|
||||
})
|
||||
it("should allow removal of nth of values in Try-It-Out", () => {
|
||||
cy.visit(
|
||||
"/?url=/documents/features/multiple-examples-core.openapi.yaml"
|
||||
)
|
||||
.get("#operations-default-post_Array")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.select("ArrayExampleB")
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}5")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"1",
|
||||
"2",
|
||||
"3",
|
||||
"4",
|
||||
"5",
|
||||
])
|
||||
})
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.find(":selected")
|
||||
.should("have.text", "[Modified value]")
|
||||
// Remove the second item in list
|
||||
.get(
|
||||
".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"1",
|
||||
"3",
|
||||
"4",
|
||||
"5",
|
||||
])
|
||||
})
|
||||
})
|
||||
it("should allow execution of operation in Try-It-Out", () => {
|
||||
cy.visit(
|
||||
"/?url=/documents/features/multiple-examples-core.openapi.yaml"
|
||||
)
|
||||
.get("#operations-default-post_Array")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.select("ArrayExampleB")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
})
|
||||
it("should add empty item and allow execution of operation in Try-It-Out", () => {
|
||||
cy.visit(
|
||||
"/?url=/documents/features/multiple-examples-core.openapi.yaml"
|
||||
)
|
||||
.get("#operations-default-post_Array")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description .examples-select > select")
|
||||
.select("ArrayExampleB")
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
// Execute without prior typing a value
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
})
|
||||
})
|
||||
})
|
||||
describe("Petstore", () => {
|
||||
describe("/pet/findByStatus", () => {
|
||||
it("should render the operation, execute with default value", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-default-findPetsByStatus")
|
||||
.click()
|
||||
// Expand operation
|
||||
.get(".opblock-title span")
|
||||
.should("have.text", "Parameters")
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "available")
|
||||
})
|
||||
it("should render the operation, modify value, and execute with modified value", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-default-findPetsByStatus")
|
||||
.click()
|
||||
// Expand operation
|
||||
.get(".opblock-title span")
|
||||
.should("have.text", "Parameters")
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Select
|
||||
.get(".parameters-col_description > select")
|
||||
.select("pending")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "pending")
|
||||
})
|
||||
})
|
||||
describe("/pet/findByTags", () => {
|
||||
it("should allow modification of values in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.type("{selectall}spotted")
|
||||
.blur()
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
])
|
||||
})
|
||||
})
|
||||
it("should allow removal of added value in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}spotted")
|
||||
.blur()
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
])
|
||||
})
|
||||
// Remove the last item that was just added
|
||||
.get(
|
||||
".json-schema-form-item:last-of-type > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.should("not.exist")
|
||||
})
|
||||
it("should allow removal of nth of values in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}spotted")
|
||||
.blur()
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
])
|
||||
})
|
||||
// Add a 2nd new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}large")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"large",
|
||||
])
|
||||
})
|
||||
// Add a 3rd new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}puppy")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"large",
|
||||
"puppy",
|
||||
])
|
||||
})
|
||||
// Remove the second item in list
|
||||
.get(
|
||||
".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"puppy",
|
||||
])
|
||||
})
|
||||
})
|
||||
it("should allow execution of operation without modifications in Try-It-Out (debounce)", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "findByTags")
|
||||
})
|
||||
it("should add empty item and allow execution of operation in Try-It-Out (debounce)", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
// Execute without prior typing a value
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "findByTags")
|
||||
})
|
||||
it("should add modified item and allow execution of operation in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.type("{selectall}spotted")
|
||||
.blur()
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
])
|
||||
})
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "spotted")
|
||||
})
|
||||
it("should add 3 modified items, remove the middle child, and allow execution of operation Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-pet-findPetsByTags")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Add a new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}spotted")
|
||||
.blur()
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
])
|
||||
})
|
||||
// Add a 2nd new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}large")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"large",
|
||||
])
|
||||
})
|
||||
// Add a 3rd new item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > input")
|
||||
.type("{selectall}puppy")
|
||||
// Assert against the input fields
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"large",
|
||||
"puppy",
|
||||
])
|
||||
})
|
||||
// Remove the second item in list
|
||||
.get(
|
||||
".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
.get(".json-schema-form-item > input")
|
||||
.then((inputs) => {
|
||||
expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([
|
||||
"spotted",
|
||||
"puppy",
|
||||
])
|
||||
})
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "tags=spotted&tags=puppy")
|
||||
.should("not.have.text", "large")
|
||||
})
|
||||
})
|
||||
describe("/petOwner/{petOwnerId}", () => {
|
||||
// This is a (GET) debounce test for schema type: string
|
||||
it("should render the operation, and allow execute of operation with empty value (debounce)", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-getPetOwnerById")
|
||||
.click()
|
||||
// Expand operation
|
||||
.get(".opblock-title span")
|
||||
.should("have.text", "Parameters")
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "petOwner")
|
||||
})
|
||||
it("should render the operation, and input field, and allow execute of operation", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-getPetOwnerById")
|
||||
.click()
|
||||
// Expand operation
|
||||
.get(".opblock-title span")
|
||||
.should("have.text", "Parameters")
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".parameters-col_description > input")
|
||||
.type("123")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "petOwner")
|
||||
.should("contain.text", "123")
|
||||
})
|
||||
})
|
||||
describe("/petOwner/listOfServiceTrainer", () => {
|
||||
it("should allow execution of operation with value=true in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-listOfServiceTrainer")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// add 1st item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > select")
|
||||
.select("true")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "tags=true")
|
||||
})
|
||||
it("should allow execution of operation with value=false in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-listOfServiceTrainer")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// add 1st item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > select")
|
||||
.select("false")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "tags=false")
|
||||
})
|
||||
it("should allow execution of operation with value=true&value=false in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-listOfServiceTrainer")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// add 1st item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > select")
|
||||
.select("true")
|
||||
// add 2nd item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > select")
|
||||
.select("false")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "tags=true&tags=false")
|
||||
})
|
||||
it("should allow execution of operation with value=false after removing value=true in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-listOfServiceTrainer")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// add 1st item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item > select")
|
||||
.select("true")
|
||||
// add 2nd item
|
||||
.get(".json-schema-form-item-add")
|
||||
.click()
|
||||
.get(".json-schema-form-item:last-of-type > select")
|
||||
.select("false")
|
||||
// remove 1st item
|
||||
.get(
|
||||
".json-schema-form-item:nth-child(1) > .json-schema-form-item-remove"
|
||||
)
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "tags=false")
|
||||
})
|
||||
it("should allow execution of operation with value=(empty) in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-listOfServiceTrainer")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "listOfServiceTrainer")
|
||||
})
|
||||
})
|
||||
describe("/petOwner/findByPreference", () => {
|
||||
it("should allow execution of operation with value=(empty) in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-findByPreference")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "findByPreference")
|
||||
})
|
||||
it("should allow execution of operation with selected value in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-findByPreference")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Select
|
||||
.get(".parameters-col_description > select")
|
||||
.select("dog")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "findByPreference")
|
||||
.should("contain.text", "dog")
|
||||
})
|
||||
it("should allow execution of operation with multiple selected values in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-findByPreference")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Select
|
||||
.get(".parameters-col_description > select")
|
||||
.select(["dog", "cat"])
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "findByPreference")
|
||||
.should("contain.text", "dog")
|
||||
.should("contain.text", "cat")
|
||||
})
|
||||
})
|
||||
describe("/petOwner/createWithList", () => {
|
||||
it("should allow execution of operation with default text in textArea in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-petOwnerCreateWithList")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "createWithList")
|
||||
})
|
||||
it("should allow execution of operation with cleared textArea in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-petOwnerCreateWithList")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".body-param__text")
|
||||
.clear()
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "createWithList")
|
||||
})
|
||||
it("should allow execution of operation with modified textArea in Try-It-Out", () => {
|
||||
cy.visit("/?url=/documents/features/schema-form-core.yaml")
|
||||
.get("#operations-petOwner-petOwnerCreateWithList")
|
||||
.click()
|
||||
// Expand Try It Out
|
||||
.get(".try-out__btn")
|
||||
.click()
|
||||
.get(".body-param__text")
|
||||
.clear()
|
||||
// note: adding this much type adds 6+ seconds to test
|
||||
.type(
|
||||
`[
|
||||
{
|
||||
"id": 10,
|
||||
"petId": 201,
|
||||
"petOwnerFirstName": "John",
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"petId": 201,
|
||||
"petOwnerFirstName": "Jane",
|
||||
}
|
||||
]`
|
||||
)
|
||||
.should("contain.text", "Jane")
|
||||
.should("contain.text", "201")
|
||||
// Execute
|
||||
.get(".execute.opblock-control__btn")
|
||||
.click()
|
||||
// Expect new element to be visible after Execute
|
||||
.get(".btn-clear.opblock-control__btn")
|
||||
.should("have.text", "Clear")
|
||||
// Compare Request URL
|
||||
.get(".request-url pre.microlight")
|
||||
.should("contain.text", "createWithList")
|
||||
// Compare Curl
|
||||
.get(".curl")
|
||||
.should("contain.text", "Jane")
|
||||
.should("contain.text", "201")
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user