Runner Tweaks (#62)

Co-authored-by: Steve Faulkner <stfaul@microsoft.com>
This commit is contained in:
Steve Faulkner 2020-06-25 18:59:44 -05:00 committed by GitHub
parent 3bf42b23dd
commit e5fc6f2022
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 55 additions and 44 deletions

View File

@ -1,7 +1,7 @@
name: Runners
on:
schedule:
- cron: "*/15 * * * *"
- cron: "*/10 * * * *"
jobs:
sqlcreatecollection:
runs-on: ubuntu-latest

View File

@ -1,52 +1,57 @@
import "expect-puppeteer";
import { trackEvent } from "./utils";
import { trackEvent, trackException } from "./utils";
jest.setTimeout(300000);
describe("Collection CRUD", () => {
it("should complete collection crud", async () => {
// Login to Azure Portal
await page.goto("https://portal.azure.com");
await page.waitFor("input[name=loginfmt]");
await page.type("input[name=loginfmt]", process.env.PORTAL_RUNNER_USERNAME);
await page.click("input[type=submit]");
await page.waitFor(3000);
await page.waitFor("input[name=loginfmt]");
await page.type("input[name=passwd]", process.env.PORTAL_RUNNER_PASSWORD);
await page.click("input[type=submit]");
await page.waitFor(3000);
await page.waitForNavigation();
await page.goto(
`https://ms.portal.azure.com/#@microsoft.onmicrosoft.com/resource/subscriptions/${process.env.PORTAL_RUNNER_SUBSCRIPTION}/resourceGroups/${process.env.PORTAL_RUNNER_RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/${process.env.PORTAL_RUNNER_DATABASE_ACCOUNT}/dataExplorer`
);
// Wait for page to settle
await page.waitFor(10000);
// Find Data Explorer iFrame
const frames = page.frames();
const dataExplorer = frames.find(frame => frame.url().includes("cosmos.azure.com"));
// Click "New Container"
const newContainerButton = await dataExplorer.$('button[data-test="New Container"]');
await newContainerButton.click();
// Wait for side pane to appear
await dataExplorer.waitFor(".contextual-pane-in");
// Fill out New Container form
const databaseIdInput = await dataExplorer.$("#databaseId");
await databaseIdInput.type("foo");
const collectionIdInput = await dataExplorer.$("#containerId");
await collectionIdInput.type("foo");
const partitionKeyInput = await dataExplorer.$('input[data-test="addCollection-partitionKeyValue"]');
await partitionKeyInput.type("/partitionKey");
trackEvent({ name: "ProductionRunnerSuccess" });
try {
// Login to Azure Portal
await page.goto("https://portal.azure.com");
await page.waitFor("input[name=loginfmt]");
await page.type("input[name=loginfmt]", process.env.PORTAL_RUNNER_USERNAME);
await page.click("input[type=submit]");
await page.waitFor(3000);
await page.waitFor("input[name=loginfmt]");
await page.type("input[name=passwd]", process.env.PORTAL_RUNNER_PASSWORD);
await page.click("input[type=submit]");
await page.waitFor(3000);
await page.waitForNavigation();
await page.goto(
`https://ms.portal.azure.com/#@microsoft.onmicrosoft.com/resource/subscriptions/${process.env.PORTAL_RUNNER_SUBSCRIPTION}/resourceGroups/${process.env.PORTAL_RUNNER_RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/${process.env.PORTAL_RUNNER_DATABASE_ACCOUNT}/dataExplorer`
);
// Wait for page to settle
await page.waitFor(10000);
// Find Data Explorer iFrame
const frames = page.frames();
const dataExplorer = frames.find(frame => frame.url().includes("cosmos.azure.com"));
// Click "New Container"
const newContainerButton = await dataExplorer.$('button[data-test="New Container"]');
await newContainerButton.click();
// Wait for side pane to appear
await dataExplorer.waitFor(".contextual-pane-in");
// Fill out New Container form
const databaseIdInput = await dataExplorer.$("#databaseId");
await databaseIdInput.type("foo");
const collectionIdInput = await dataExplorer.$("#containerId");
await collectionIdInput.type("foo");
const partitionKeyInput = await dataExplorer.$('input[data-test="addCollection-partitionKeyValue"]');
await partitionKeyInput.type("/partitionKey");
trackEvent({ name: "ProductionRunnerSuccess" });
// TODO: Submit form and assert results
// cy.wrap($body)
// .find("#submitBtnAddCollection")
// .click();
// cy.wait(10000);
// cy.wrap($body)
// .find('div[data-test="resourceTreeId"]')
// .should("exist")
// .find('div[class="treeComponent dataResourceTree"]')
// .should("contain", dbId);
// TODO: Submit form and assert results
// cy.wrap($body)
// .find("#submitBtnAddCollection")
// .click();
// cy.wait(10000);
// cy.wrap($body)
// .find('div[data-test="resourceTreeId"]')
// .should("exist")
// .find('div[class="treeComponent dataResourceTree"]')
// .should("contain", dbId);
} catch (error) {
trackException(error);
throw error;
}
});
});

View File

@ -13,3 +13,9 @@ module.exports.trackEvent = (...args) => {
client.trackEvent(...args);
}
};
module.exports.trackException = exception => {
if (client) {
client.trackException({ exception });
}
};