__test: create geneset

This commit is contained in:
Colin Megill
2021-06-04 02:10:36 -07:00
parent 7ed53c0f5b
commit 68a5b632d1
6 changed files with 80 additions and 9 deletions
+40
View File
@@ -176,6 +176,46 @@ export async function createCategory(categoryName) {
await clickOn("submit-category");
}
export async function createGeneset(genesetName) {
await clickOnUntil("open-create-geneset-dialog", async () => {
await expect(page).toMatchElement(getTestId("create-geneset-input"));
});
await typeInto("create-geneset-input", genesetName);
await clickOn("submit-geneset");
await waitByClass("autosave-complete");
}
export async function deleteGeneset(genesetName) {
const targetId = `${genesetName}:delete-category`;
await clickOnUntil(`${genesetName}:see-actions`, async () => {
await expect(page).toMatchElement(getTestId(targetId));
});
await clickOn(targetId);
await assertGenesetDoesNotExist(genesetName);
await waitByClass("autosave-complete");
}
export async function assertGenesetDoesNotExist(genesetName) {
const result = await isElementPresent(
getTestId(`${genesetName}:geneset-name`)
);
await expect(result).toBe(false);
}
export async function assertGenesetExists(genesetName) {
const handle = await waitByID(`${genesetName}:geneset-name`);
const result = await handle.evaluate((node) => {
return node.getAttribute("aria-label");
});
return expect(result).toBe(genesetName);
}
export async function duplicateCategory(categoryName) {
await clickOn("open-annotation-dialog");
@@ -27,12 +27,17 @@ import {
renameLabel,
subset,
duplicateCategory,
createGeneset,
deleteGeneset,
assertGenesetExists,
assertGenesetDoesNotExist,
} from "./cellxgeneActions";
const data = datasets[DATASET];
const perTestCategoryName = "TEST-CATEGORY";
const perTestLabelName = "TEST-LABEL";
const perTestGenesetName = "TEST-GENESET";
async function setup(config) {
await goToPage(appUrlBase);
@@ -40,6 +45,7 @@ async function setup(config) {
// setup the test fixtures
await createCategory(perTestCategoryName);
await createLabel(perTestCategoryName, perTestLabelName);
await createGeneset(perTestGenesetName);
if (config.withSubset) {
await subset({ x1: 0.1, y1: 0.1, x2: 0.8, y2: 0.8 });
@@ -48,6 +54,32 @@ async function setup(config) {
await waitByClass("autosave-complete");
}
describe("geneSET crud operations and interactions", (config = {}) => {
// test("static pre existing genesets load from csv, expand", async () => {});
// test("color by geneset", async () => {});
// test("brush on geneset mean", async () => {});
test("create a new geneset", async () => {
await setup(config);
const genesetName = `test-geneset-foo-123`;
await assertGenesetDoesNotExist(genesetName);
await createGeneset(genesetName);
/* note: as of June 2021, the aria label is in the truncate component which clones the element */
await assertGenesetExists(genesetName);
});
// test("edit geneset description", async () => {});
test("delete a geneset", async () => {
await deleteGeneset(perTestGenesetName);
});
});
// describe("GENE crud operations and interactions", () => {
// test("add a gene to geneset", async () => {});
// test("color by gene", async () => {});
// test("expand gene and brush", async () => {});
// test("delete gene from geneset", async () => {});
// });
describe.each([
{ withSubset: true, tag: "subset" },
{ withSubset: false, tag: "whole" },