chore: add prettier (2/3): apply formatting, re-enable lint ci step (#6682)
* style: apply prettier formatting * fix: re-enable lint ci check
This commit is contained in:
@@ -20,84 +20,108 @@
|
||||
* at runtime from the About dialog for additional information.
|
||||
*****************************************************************************/
|
||||
const { test, expect } = require('../../../pluginFixtures');
|
||||
const { createPlanFromJSON, createDomainObjectWithDefaults, selectInspectorTab } = require('../../../appActions');
|
||||
const {
|
||||
createPlanFromJSON,
|
||||
createDomainObjectWithDefaults,
|
||||
selectInspectorTab
|
||||
} = require('../../../appActions');
|
||||
const testPlan1 = require('../../../test-data/examplePlans/ExamplePlan_Small1.json');
|
||||
const testPlan2 = require('../../../test-data/examplePlans/ExamplePlan_Small2.json');
|
||||
const { assertPlanActivities, setBoundsToSpanAllActivities } = require('../../../helper/planningUtils');
|
||||
const {
|
||||
assertPlanActivities,
|
||||
setBoundsToSpanAllActivities
|
||||
} = require('../../../helper/planningUtils');
|
||||
const { getPreciseDuration } = require('../../../../src/utils/duration');
|
||||
|
||||
test.describe("Gantt Chart", () => {
|
||||
let ganttChart;
|
||||
let plan;
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await page.goto('./', { waitUntil: 'domcontentloaded' });
|
||||
ganttChart = await createDomainObjectWithDefaults(page, {
|
||||
type: 'Gantt Chart'
|
||||
});
|
||||
plan = await createPlanFromJSON(page, {
|
||||
json: testPlan1,
|
||||
parent: ganttChart.uuid
|
||||
});
|
||||
test.describe('Gantt Chart', () => {
|
||||
let ganttChart;
|
||||
let plan;
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await page.goto('./', { waitUntil: 'domcontentloaded' });
|
||||
ganttChart = await createDomainObjectWithDefaults(page, {
|
||||
type: 'Gantt Chart'
|
||||
});
|
||||
plan = await createPlanFromJSON(page, {
|
||||
json: testPlan1,
|
||||
parent: ganttChart.uuid
|
||||
});
|
||||
});
|
||||
|
||||
test('Displays all plan events', async ({ page }) => {
|
||||
await page.goto(ganttChart.url);
|
||||
|
||||
await assertPlanActivities(page, testPlan1, ganttChart.url);
|
||||
});
|
||||
test('Replaces a plan with a new plan', async ({ page }) => {
|
||||
await assertPlanActivities(page, testPlan1, ganttChart.url);
|
||||
await createPlanFromJSON(page, {
|
||||
json: testPlan2,
|
||||
parent: ganttChart.uuid
|
||||
});
|
||||
const replaceModal = page
|
||||
.getByRole('dialog')
|
||||
.filter({ hasText: 'This action will replace the current Plan. Do you want to continue?' });
|
||||
await expect(replaceModal).toBeVisible();
|
||||
await page.getByRole('button', { name: 'OK' }).click();
|
||||
|
||||
await assertPlanActivities(page, testPlan2, ganttChart.url);
|
||||
});
|
||||
test('Can select a single activity and display its details in the inspector', async ({
|
||||
page
|
||||
}) => {
|
||||
test.slow();
|
||||
await page.goto(ganttChart.url);
|
||||
|
||||
await setBoundsToSpanAllActivities(page, testPlan1, ganttChart.url);
|
||||
|
||||
const activities = Object.values(testPlan1).flat();
|
||||
const activity = activities[0];
|
||||
await page
|
||||
.locator('g')
|
||||
.filter({ hasText: new RegExp(activity.name) })
|
||||
.click();
|
||||
await selectInspectorTab(page, 'Activity');
|
||||
|
||||
const startDateTime = await page
|
||||
.locator(
|
||||
'.c-inspect-properties__label:has-text("Start DateTime")+.c-inspect-properties__value'
|
||||
)
|
||||
.innerText();
|
||||
const endDateTime = await page
|
||||
.locator('.c-inspect-properties__label:has-text("End DateTime")+.c-inspect-properties__value')
|
||||
.innerText();
|
||||
const duration = await page
|
||||
.locator('.c-inspect-properties__label:has-text("duration")+.c-inspect-properties__value')
|
||||
.innerText();
|
||||
|
||||
const expectedStartDate = new Date(activity.start).toISOString();
|
||||
const actualStartDate = new Date(startDateTime).toISOString();
|
||||
const expectedEndDate = new Date(activity.end).toISOString();
|
||||
const actualEndDate = new Date(endDateTime).toISOString();
|
||||
const expectedDuration = getPreciseDuration(activity.end - activity.start);
|
||||
const actualDuration = duration;
|
||||
|
||||
expect(expectedStartDate).toEqual(actualStartDate);
|
||||
expect(expectedEndDate).toEqual(actualEndDate);
|
||||
expect(expectedDuration).toEqual(actualDuration);
|
||||
});
|
||||
test("Displays a Plan's draft status", async ({ page }) => {
|
||||
test.info().annotations.push({
|
||||
type: 'issue',
|
||||
description: 'https://github.com/nasa/openmct/issues/6641'
|
||||
});
|
||||
|
||||
test("Displays all plan events", async ({ page }) => {
|
||||
await page.goto(ganttChart.url);
|
||||
// Mark the Plan's status as draft in the OpenMCT API
|
||||
await page.evaluate(async (planObject) => {
|
||||
await window.openmct.status.set(planObject.uuid, 'draft');
|
||||
}, plan);
|
||||
|
||||
await assertPlanActivities(page, testPlan1, ganttChart.url);
|
||||
});
|
||||
test("Replaces a plan with a new plan", async ({ page }) => {
|
||||
await assertPlanActivities(page, testPlan1, ganttChart.url);
|
||||
await createPlanFromJSON(page, {
|
||||
json: testPlan2,
|
||||
parent: ganttChart.uuid
|
||||
});
|
||||
const replaceModal = page.getByRole('dialog').filter({ hasText: "This action will replace the current Plan. Do you want to continue?" });
|
||||
await expect(replaceModal).toBeVisible();
|
||||
await page.getByRole('button', { name: 'OK' }).click();
|
||||
// Navigate to the Gantt Chart
|
||||
await page.goto(ganttChart.url);
|
||||
|
||||
await assertPlanActivities(page, testPlan2, ganttChart.url);
|
||||
});
|
||||
test("Can select a single activity and display its details in the inspector", async ({ page }) => {
|
||||
test.slow();
|
||||
await page.goto(ganttChart.url);
|
||||
|
||||
await setBoundsToSpanAllActivities(page, testPlan1, ganttChart.url);
|
||||
|
||||
const activities = Object.values(testPlan1).flat();
|
||||
const activity = activities[0];
|
||||
await page.locator('g').filter({ hasText: new RegExp(activity.name) }).click();
|
||||
await selectInspectorTab(page, 'Activity');
|
||||
|
||||
const startDateTime = await page.locator('.c-inspect-properties__label:has-text("Start DateTime")+.c-inspect-properties__value').innerText();
|
||||
const endDateTime = await page.locator('.c-inspect-properties__label:has-text("End DateTime")+.c-inspect-properties__value').innerText();
|
||||
const duration = await page.locator('.c-inspect-properties__label:has-text("duration")+.c-inspect-properties__value').innerText();
|
||||
|
||||
const expectedStartDate = new Date(activity.start).toISOString();
|
||||
const actualStartDate = new Date(startDateTime).toISOString();
|
||||
const expectedEndDate = new Date(activity.end).toISOString();
|
||||
const actualEndDate = new Date(endDateTime).toISOString();
|
||||
const expectedDuration = getPreciseDuration(activity.end - activity.start);
|
||||
const actualDuration = duration;
|
||||
|
||||
expect(expectedStartDate).toEqual(actualStartDate);
|
||||
expect(expectedEndDate).toEqual(actualEndDate);
|
||||
expect(expectedDuration).toEqual(actualDuration);
|
||||
});
|
||||
test("Displays a Plan's draft status", async ({ page }) => {
|
||||
test.info().annotations.push({
|
||||
type: 'issue',
|
||||
description: 'https://github.com/nasa/openmct/issues/6641'
|
||||
});
|
||||
|
||||
// Mark the Plan's status as draft in the OpenMCT API
|
||||
await page.evaluate(async (planObject) => {
|
||||
await window.openmct.status.set(planObject.uuid, 'draft');
|
||||
}, plan);
|
||||
|
||||
// Navigate to the Gantt Chart
|
||||
await page.goto(ganttChart.url);
|
||||
|
||||
// Assert that the Plan's status is displayed as draft
|
||||
expect(await page.locator('.u-contents.c-swimlane.is-status--draft').count()).toBe(Object.keys(testPlan1).length);
|
||||
});
|
||||
// Assert that the Plan's status is displayed as draft
|
||||
expect(await page.locator('.u-contents.c-swimlane.is-status--draft').count()).toBe(
|
||||
Object.keys(testPlan1).length
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user