diff --git a/src/core/components/response.jsx b/src/core/components/response.jsx index 48804920424..f86e4d73c1e 100644 --- a/src/core/components/response.jsx +++ b/src/core/components/response.jsx @@ -130,7 +130,7 @@ export default class Response extends React.Component { // Goal: find an example value for `sampleResponse` if(isOAS3) { - sampleSchema = activeMediaType.get("schema", Map({})).toJS() + sampleSchema = activeMediaType.get("schema")?.toJS() if(examplesForMediaType) { const targetExamplesKey = this.getTargetExamplesKey() const targetExample = examplesForMediaType diff --git a/src/core/plugins/samples/fn.js b/src/core/plugins/samples/fn.js index 3a313b9519b..3db65d9a3fb 100644 --- a/src/core/plugins/samples/fn.js +++ b/src/core/plugins/samples/fn.js @@ -35,28 +35,33 @@ const primitive = (schema) => { const sanitizeRef = (value) => deeplyStripKey(value, "$$ref", (val) => typeof val === "string" && val.indexOf("#") > -1) +const objectContracts = ["maxProperties", "minProperties"] +const arrayContracts = ["minItems", "maxItems"] +const numberContracts = [ + "minimum", + "maximum", + "exclusiveMinimum", + "exclusiveMaximum" +] +const stringContracts = ["minLength", "maxLength"] + const liftSampleHelper = (oldSchema, target, config = {}) => { const setIfNotDefinedInTarget = (key) => { if(target[key] === undefined && oldSchema[key] !== undefined) { target[key] = oldSchema[key] } } + [ "example", "default", "enum", "xml", "type", - "maxProperties", - "minProperties", - "minItems", - "maxItems", - "minimum", - "maximum", - "exclusiveMinimum", - "exclusiveMaximum", - "minLength", - "maxLength" + ...objectContracts, + ...arrayContracts, + ...numberContracts, + ...stringContracts, ].forEach(key => setIfNotDefinedInTarget(key)) if(oldSchema.required !== undefined && Array.isArray(oldSchema.required)) { @@ -111,8 +116,9 @@ const liftSampleHelper = (oldSchema, target, config = {}) => { } export const sampleFromSchemaGeneric = (schema, config={}, exampleOverride = undefined, respectXML = false) => { - schema = objectify(schema) - let usePlainValue = exampleOverride !== undefined || schema.example !== undefined || schema && schema.default !== undefined + if(schema && isFunc(schema.toJS)) + schema = schema.toJS() + let usePlainValue = exampleOverride !== undefined || schema && schema.example !== undefined || schema && schema.default !== undefined // first check if there is the need of combining this schema with others required by allOf const hasOneOf = !usePlainValue && schema && schema.oneOf && schema.oneOf.length > 0 const hasAnyOf = !usePlainValue && schema && schema.anyOf && schema.anyOf.length > 0 @@ -159,7 +165,7 @@ export const sampleFromSchemaGeneric = (schema, config={}, exampleOverride = und } } const _attr = {} - let { xml, type, example, properties, additionalProperties, items } = schema + let { xml, type, example, properties, additionalProperties, items } = schema || {} let { includeReadOnly, includeWriteOnly } = config xml = xml || {} let { name, prefix, namespace } = xml @@ -183,24 +189,43 @@ export const sampleFromSchemaGeneric = (schema, config={}, exampleOverride = und res[displayName] = [] } + const schemaHasAny = (keys) => keys.some(key => Object.prototype.hasOwnProperty.call(schema, key)) // try recover missing type if(schema && !type) { - if(properties || additionalProperties) { + if(properties || additionalProperties || schemaHasAny(objectContracts)) { type = "object" - } else if(items) { + } else if(items || schemaHasAny(arrayContracts)) { type = "array" + } else if(schemaHasAny(numberContracts)) { + type = "number" + schema.type = "number" } else if(!usePlainValue && !schema.enum){ - return + // implicit cover schemaHasAny(stringContracts) or A schema without a type matches any data type is: + // components: + // schemas: + // AnyValue: + // anyOf: + // - type: string + // - type: number + // - type: integer + // - type: boolean + // - type: array + // items: {} + // - type: object + // + // which would resolve to type: string + type = "string" + schema.type = "string" } } const handleMinMaxItems = (sampleArray) => { - if (schema.maxItems !== null && schema.maxItems !== undefined) { - sampleArray = sampleArray.slice(0, schema.maxItems) + if (schema?.maxItems !== null && schema?.maxItems !== undefined) { + sampleArray = sampleArray.slice(0, schema?.maxItems) } - if (schema.minItems !== null && schema.minItems !== undefined) { + if (schema?.minItems !== null && schema?.minItems !== undefined) { let i = 0 - while (sampleArray.length < schema.minItems) { + while (sampleArray.length < schema?.minItems) { sampleArray.push(sampleArray[i++ % sampleArray.length]) } } @@ -477,7 +502,7 @@ export const sampleFromSchemaGeneric = (schema, config={}, exampleOverride = und if(type === "array") { let sampleArray if(respectXML) { - items.xml = items.xml || schema.xml || {} + items.xml = items.xml || schema?.xml || {} items.xml.name = items.xml.name || xml.name } diff --git a/test/e2e-cypress/tests/features/multiple-examples-core.js b/test/e2e-cypress/tests/features/multiple-examples-core.js index 6eef6267198..8dad7b6f769 100644 --- a/test/e2e-cypress/tests/features/multiple-examples-core.js +++ b/test/e2e-cypress/tests/features/multiple-examples-core.js @@ -314,7 +314,7 @@ describe("OpenAPI 3.0 Multiple Examples - core features", () => { .get(".json-schema-form-item-add") .click() .get(".json-schema-form-item:last-of-type > input") - .type("5") + .type("{selectall}5") // Assert against the input fields .get(".json-schema-form-item > input") .then((inputs) => { @@ -345,7 +345,7 @@ describe("OpenAPI 3.0 Multiple Examples - core features", () => { .get(".json-schema-form-item-add") .click() .get(".json-schema-form-item:last-of-type > input") - .type("5") + .type("{selectall}5") // Reset to an example .get(".parameters-col_description .examples-select > select") .select("ArrayExampleB") diff --git a/test/e2e-cypress/tests/features/schema-form.js b/test/e2e-cypress/tests/features/schema-form.js index 3f4ca3d1ea5..57fa970c1ce 100644 --- a/test/e2e-cypress/tests/features/schema-form.js +++ b/test/e2e-cypress/tests/features/schema-form.js @@ -6,36 +6,28 @@ 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" - ) + 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" - ) + 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" - ) + 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" - ) + 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") @@ -44,36 +36,28 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { }) 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" - ) + 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" - ) + 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" - ) + 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" - ) + 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") @@ -98,10 +82,10 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .get(".json-schema-form-item-add") .click() .get(".json-schema-form-item:last-of-type > input") - .type("5") + .type("{selectall}5") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "1", "2", @@ -129,10 +113,10 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .get(".json-schema-form-item-add") .click() .get(".json-schema-form-item:last-of-type > input") - .type("5") + .type("{selectall}5") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "1", "2", @@ -145,10 +129,12 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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") + .get( + ".json-schema-form-item:last-of-type > .json-schema-form-item-remove" + ) .click() .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "1", "2", @@ -172,10 +158,10 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .get(".json-schema-form-item-add") .click() .get(".json-schema-form-item:last-of-type > input") - .type("5") + .type("{selectall}5") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "1", "2", @@ -188,15 +174,17 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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") + .get( + ".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove" + ) .click() .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "1", "3", "4", - "5" + "5", ]) }) }) @@ -244,9 +232,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { describe("Petstore", () => { describe("/pet/findByStatus", () => { it("should render the operation, execute with default value", () => { - cy.visit( - "/?url=/documents/features/schema-form-core.yaml" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-default-findPetsByStatus") .click() // Expand operation @@ -266,9 +252,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .should("contain.text", "available") }) it("should render the operation, modify value, and execute with modfied value", () => { - cy.visit( - "/?url=/documents/features/schema-form-core.yaml" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-default-findPetsByStatus") .click() // Expand operation @@ -286,16 +270,14 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { // Expect new element to be visible after Execute .get(".btn-clear.opblock-control__btn") .should("have.text", "Clear") - // Compare Request URL + // 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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -308,16 +290,14 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}spotted") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -330,21 +310,21 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}spotted") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .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") + .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -357,7 +337,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}spotted") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", ]) @@ -369,10 +349,10 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}large") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", - "large" + "large", ]) }) // Add a 3rd new item @@ -382,28 +362,28 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}puppy") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", "large", - "puppy" + "puppy", ]) }) // Remove the second item in list - .get(".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove") + .get( + ".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove" + ) .click() .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", - "puppy" + "puppy", ]) }) }) it("should allow execution of operation without modifications in Try-It-Out (debounce)", () => { - cy.visit( - "/?url=/documents/features/schema-form-core.yaml" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -420,9 +400,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -442,9 +420,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -457,7 +433,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}spotted") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", ]) @@ -473,9 +449,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-pet-findPetsByTags") .click() // Expand Try It Out @@ -488,7 +462,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}spotted") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", ]) @@ -500,10 +474,10 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}large") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", - "large" + "large", ]) }) // Add a 3rd new item @@ -513,21 +487,23 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .type("{selectall}puppy") // Assert against the input fields .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", "large", - "puppy" + "puppy", ]) }) // Remove the second item in list - .get(".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove") + .get( + ".json-schema-form-item:nth-child(2) > .json-schema-form-item-remove" + ) .click() .get(".json-schema-form-item > input") - .then(inputs => { + .then((inputs) => { expect(inputs.map((i, el) => el.value).toArray()).to.deep.equal([ "spotted", - "puppy" + "puppy", ]) }) // Execute @@ -545,9 +521,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { 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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-getPetOwnerById") .click() // Expand operation @@ -567,9 +541,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-getPetOwnerById") .click() // Expand operation @@ -594,9 +566,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { }) 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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-listOfServiceTrainer") .click() // Expand Try It Out @@ -618,9 +588,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-listOfServiceTrainer") .click() // Expand Try It Out @@ -642,9 +610,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-listOfServiceTrainer") .click() // Expand Try It Out @@ -671,9 +637,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-listOfServiceTrainer") .click() // Expand Try It Out @@ -690,7 +654,9 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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") + .get( + ".json-schema-form-item:nth-child(1) > .json-schema-form-item-remove" + ) .click() // Execute .get(".execute.opblock-control__btn") @@ -703,9 +669,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-listOfServiceTrainer") .click() // Expand Try It Out @@ -724,9 +688,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { }) 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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-findByPreference") .click() // Expand Try It Out @@ -743,9 +705,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-findByPreference") .click() // Expand Try It Out @@ -766,9 +726,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-findByPreference") .click() // Expand Try It Out @@ -792,9 +750,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { }) 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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-petOwnerCreateWithList") .click() // Expand Try It Out @@ -811,9 +767,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-petOwnerCreateWithList") .click() // Expand Try It Out @@ -832,9 +786,7 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .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" - ) + cy.visit("/?url=/documents/features/schema-form-core.yaml") .get("#operations-petOwner-petOwnerCreateWithList") .click() // Expand Try It Out @@ -843,7 +795,8 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { .get(".body-param__text") .clear() // note: adding this much type adds 6+ seconds to test - .type(`[ + .type( + `[ { "id": 10, "petId": 201, @@ -875,5 +828,3 @@ describe("OpenAPI 3.0 Additional JsonSchemaForm in a Parameter", () => { }) }) }) - -