/**
|
* @file ADSO-9342, ADSO-9343, ADSO-9344 - Create new assumption and edit assumption
|
* @description Create assumption via context menu and right corner
|
* @author Wong Jia Hui (jiahui.wong@3ds.com), Umar Adkhamov (umar.adkhamov@3ds.com)
|
* @copyright Dassault Systemes
|
*/
|
import { qCustomMatcher } from '../../e2elib/lib/src/main/qmatchers.const';
|
import { AppMP } from '../../libmp/appmp';
|
import { DataEmptyScenarioName } from '../../libmp/data/data.scenario';
|
import { ListAssumptionsContextMenuItem } from '../../libmp/forms/form.assumption';
|
import { ListScenarioContextMenuItem, ScenarioManager } from '../../libmp/forms/form.scenario';
|
|
describe('ADSO-9342, ADSO-9343, ADSO-9344 - Assumption management', () => {
|
const appMP = AppMP.getInstance();
|
const listAssumption = appMP.viewScenario.formAssumption.listAssumption;
|
const listScenario = appMP.viewScenario.formScenario.lstScenario;
|
const newScenario = DataEmptyScenarioName.TestScenario1;
|
|
beforeAll(async () => {
|
jasmine.addMatchers(qCustomMatcher);
|
await appMP.login();
|
});
|
|
afterAll(async () => {
|
await appMP.cleanupAndLogout();
|
});
|
|
afterEach(async () => {
|
await appMP.checkToastMessage();
|
});
|
|
it(`Setup - Open view ${appMP.viewScenario.viewPath}. In Scenario Manager list, create empty scenario '${newScenario}' via context menu 'Create scenario...' and select it in list.`, async () => {
|
await appMP.viewScenario.switchTo();
|
|
// Create empty scenario from Scenario Form via context menu
|
const [dlgScenario] = await listScenario.selectContextMenu(ListScenarioContextMenuItem.CreateScenario);
|
await dlgScenario.updateDialogValues({Name: newScenario, Assumption: '', Comment: 'Empty scenario'});
|
await dlgScenario.clickOK();
|
|
await listScenario.selectRow({Name: newScenario}, [{Name: ScenarioManager.AllScenarios}]);
|
});
|
|
it(`ADSO-9342 - Create new assumption via context menu. Fill in every fields except Title. Verify OK disabled.<br>
|
Set Title = FirstAssumption and click OK. Verify assumption created in list.`, async () => {
|
// Create new assumption from Assumption Form via context menu
|
const [dlgAssumption] = await listAssumption.selectContextMenu(ListAssumptionsContextMenuItem.Create);
|
|
// Leave Title empty, verify OK disabled
|
await dlgAssumption.updateDialogValues({Title: '', Description: 'Our First Assumption', Type: 'Comment', Category: 'First', Importance: 'Medium'});
|
await dlgAssumption.verifyOKDisabled();
|
|
// Update Title and click OK
|
await dlgAssumption.updateDialogValues({Title: 'FirstAssumption'});
|
await dlgAssumption.clickOK();
|
await listAssumption.verifyRowExists({Title: 'FirstAssumption'});
|
});
|
|
it('ADSO-9343 - Create new assumption via right fixed corner of the action bar', async () => {
|
// Click "Create New Assumption" button in the right fixed corner of action bar
|
const dlgAssumption = await listAssumption.clickActionButton(appMP.btnCreateAssumption);
|
|
// Leave Title empty, verify OK disabled
|
await dlgAssumption.updateDialogValues({Title: '', Description: 'Our Second Assumption', Type: 'Risk', Category: 'Second', Importance: 'Low'});
|
await dlgAssumption.verifyOKDisabled();
|
|
// Update Title and click OK
|
await dlgAssumption.updateDialogValues({Title: 'SecondAssumption'});
|
await dlgAssumption.clickOK();
|
await listAssumption.verifyRowExists({Title: 'SecondAssumption'});
|
});
|
|
it('ADSO-9344 - Edit assumption via context menu.', async () => {
|
const firstAssumption = await listAssumption.getRow({Title: 'FirstAssumption'});
|
const [dlgAssumption] = await listAssumption.selectContextMenu(ListAssumptionsContextMenuItem.Edit, firstAssumption);
|
|
// Store new values into variables
|
const title = 'EditedAssumption';
|
const description = 'Yay we edited it!';
|
const type = 'Highlight';
|
const category = 'Edited';
|
const importance = 'N/A';
|
// Edit the assumption
|
await dlgAssumption.updateDialogValues({Title: title, Description: description, Type: type, Category: category, Importance: importance});
|
await dlgAssumption.clickOK();
|
|
await listAssumption.verifyRowValues(firstAssumption, {Title: title, Importance: importance, Category: category});
|
});
|
});
|