mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-02-18 10:17:16 +00:00
* added recursion and inition decorators * working version * added todo comment and removed console.log * Added Recursive add * removed type requirement * proper resolution of promises * added custom element and base class * Made selfServe standalone page * Added custom renderer as async type * Added overall defaults * added inital open from data explorer * removed landingpage * added feature for self serve type * renamed sqlx->example and added invalid type * Added comments for Example * removed unnecessary changes * Resolved PR comments Added tests Moved onSubmt and initialize inside base class Moved testExplorer to separate folder made fields of SelfServe Class non static * fixed lint errors * fixed compilation errors * Removed reactbinding changes * renamed dropdown -> choice * Added SelfServeComponent * Addressed PR comments * added toggle, visibility, text display,commandbar * added sqlx example * added onRefrssh * formatting changes * rmoved radioswitch display * updated smartui tests * Added more tests * onSubmit -> onSave * Resolved PR comments
45 lines
1.9 KiB
TypeScript
45 lines
1.9 KiB
TypeScript
import { Frame } from "puppeteer";
|
|
import { TestExplorerParams } from "../testExplorer/TestExplorerParams";
|
|
import { getTestExplorerFrame } from "../testExplorer/TestExplorerUtils";
|
|
import { SelfServeType } from "../../src/SelfServe/SelfServeUtils";
|
|
|
|
jest.setTimeout(300000);
|
|
|
|
let frame: Frame;
|
|
describe("Self Serve", () => {
|
|
it("Launch Self Serve Example", async () => {
|
|
try {
|
|
frame = await getTestExplorerFrame(
|
|
new Map<string, string>([[TestExplorerParams.selfServeType, SelfServeType.example]])
|
|
);
|
|
|
|
// id of the display element is in the format {PROPERTY_NAME}-{DISPLAY_NAME}-{DISPLAY_TYPE}
|
|
await frame.waitForSelector("#description-text-display");
|
|
|
|
const regions = await frame.waitForSelector("#regions-dropdown-input");
|
|
let disabledLoggingToggle = await frame.$$("#enableLogging-toggle-input[disabled]");
|
|
expect(disabledLoggingToggle).toHaveLength(0);
|
|
await regions.click();
|
|
const regionsDropdownElement1 = await frame.waitForSelector("#regions-dropdown-input-list0");
|
|
await regionsDropdownElement1.click();
|
|
disabledLoggingToggle = await frame.$$("#enableLogging-toggle-input[disabled]");
|
|
expect(disabledLoggingToggle).toHaveLength(1);
|
|
|
|
await frame.waitForSelector("#accountName-textField-input");
|
|
|
|
const enableDbLevelThroughput = await frame.waitForSelector("#enableDbLevelThroughput-toggle-input");
|
|
const dbThroughput = await frame.$$("#dbThroughput-slider-input");
|
|
expect(dbThroughput).toHaveLength(0);
|
|
await enableDbLevelThroughput.click();
|
|
await frame.waitForSelector("#dbThroughput-slider-input");
|
|
|
|
await frame.waitForSelector("#collectionThroughput-spinner-input");
|
|
} catch (error) {
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
const testName = (expect as any).getState().currentTestName;
|
|
await page.screenshot({ path: `Test Failed ${testName}.jpg` });
|
|
throw error;
|
|
}
|
|
});
|
|
});
|