From 8ffb1aef97d2eb80ae17b5ba75f4ef4ae90178cb Mon Sep 17 00:00:00 2001 From: Calvin Gonzalez Date: Fri, 17 Sep 2021 02:19:55 -0400 Subject: [PATCH] fix(a11n): provide proper a11n for response example tabs (#7464) - Update tabs to use + + { schema && ( +
  • + +
  • + )} + + {this.state.activeTab === "example" && ( +
    + {example ? example : ( - ) - ) : null - } - { - this.state.activeTab === "model" && + )} +
    + )} - - } + {this.state.activeTab === "model" && ( +
    + +
    + )} - + ) } } diff --git a/test/e2e-cypress/tests/a11y/response-tabs.js b/test/e2e-cypress/tests/a11y/response-tabs.js new file mode 100644 index 00000000..e6f9a454 --- /dev/null +++ b/test/e2e-cypress/tests/a11y/response-tabs.js @@ -0,0 +1,35 @@ +describe("Response tab elements", () => { + describe("ModelExample within Operation", () => { + it("should render Example tabpanel by default", () => { + cy + .visit("/?url=/documents/petstore-expanded.openapi.yaml") + .get("#operations-default-addPet") + .click() + .get("div[data-name=examplePanel]") + .first() + .should("have.attr", "aria-hidden", "false") + }) + it("should click Schema tab button and render Schema tabpanel for OpenAPI 3", () => { + cy + .visit("/?url=/documents/petstore-expanded.openapi.yaml") + .get("#operations-default-addPet") + .click() + .get("button.tablinks[data-name=model]") + .first() + .click() + .get("div[data-name=modelPanel]") + .first() + .should("have.attr", "aria-hidden", "false") + }) + it("should click Model tab button and render Model tabpanel for OpenAPI 2", () => { + cy + .visit("/?url=/documents/petstore.swagger.yaml") + .get("#operations-pet-addPet") + .click() + .get("button.tablinks[data-name=model]") + .click() + .get("div[data-name=modelPanel]") + .should("have.attr", "aria-hidden", "false") + }) + }) +}) \ No newline at end of file diff --git a/test/e2e-cypress/tests/bugs/swos-63.js b/test/e2e-cypress/tests/bugs/swos-63.js index 77dbdf03..0e8199f9 100644 --- a/test/e2e-cypress/tests/bugs/swos-63.js +++ b/test/e2e-cypress/tests/bugs/swos-63.js @@ -19,7 +19,7 @@ describe("SWOS-63: Schema/Model labeling", () => { .visit("/?url=/documents/petstore-expanded.openapi.yaml") .get("#operations-default-findPets") .click() - .get("a.tablinks[data-name=model]") + .get("button.tablinks[data-name=model]") .contains("Schema") }) it("should render `Models` for OpenAPI 2", () => { @@ -28,7 +28,7 @@ describe("SWOS-63: Schema/Model labeling", () => { .get("section.models > h4") .get("#operations-pet-addPet") .click() - .get("a.tablinks[data-name=model]") + .get("button.tablinks[data-name=model]") .contains("Model") }) })