/** 
 | 
 * @file        ADSO-9602 
 | 
 * @description Create sales level 
 | 
 * @author      Clarence (ccn7@3ds.com) 
 | 
 * @copyright   Dassault Systèmes 
 | 
 */ 
 | 
import { AppMP } from '../../libmp/appmp'; 
 | 
import { StepDialog } from '../../libappsop/dialogsop'; 
 | 
import { StepList } from '../../libappsop/listsop'; 
 | 
import { DialogSalesLevel } from '../../libmp/dialogs/dialog.saleslevel'; 
 | 
import { ListSalesLevel, ListSalesLevelContextMenuItem } from '../../libmp/forms/form.saleslevel'; 
 | 
import { StepScenario } from '../../libmp/forms/form.scenario'; 
 | 
  
 | 
describe('ADSO-9602 - Create sales level', () => { 
 | 
  const appMP = AppMP.getInstance(); 
 | 
  const listSalesLevel = appMP.viewSalesSegments.formSalesLevel.listSalesLevel; 
 | 
  let dlgSalesLevel: DialogSalesLevel; 
 | 
  
 | 
  beforeAll(async () => { 
 | 
    await appMP.login(); 
 | 
  }); 
 | 
  
 | 
  afterAll(async () => { 
 | 
    await appMP.resetActiveView(appMP.viewSalesSegments); 
 | 
    await appMP.cleanupAndLogout(); 
 | 
  }); 
 | 
  
 | 
  afterEach(async () => { 
 | 
    await appMP.checkToastMessage(); 
 | 
  }); 
 | 
  
 | 
  it(`Step 1 - Open view ${appMP.viewScenario.viewPath}.`, async () => { 
 | 
    await appMP.viewScenario.switchTo(); 
 | 
  }); 
 | 
  
 | 
  it(`Step 2 - ${StepScenario.createEmptyScenario('TestCreateSalesLevel')}.`, async () => { 
 | 
    await appMP.viewScenario.formScenario.lstScenario.createEmptyScenario('TestCreateSalesLevel'); 
 | 
  }); 
 | 
  
 | 
  it(`Step 3 - Open view ${appMP.viewSalesSegments.viewPath}.`, async () => { 
 | 
    await appMP.viewSalesSegments.switchTo(); 
 | 
  }); 
 | 
  
 | 
  it(`Step 4 - ${StepList.rightClickSelectMenu(ListSalesLevel.title, ListSalesLevelContextMenuItem.Create.Label)}`, async () => { 
 | 
    [dlgSalesLevel] = await listSalesLevel.selectContextMenu(ListSalesLevelContextMenuItem.Create); 
 | 
  }); 
 | 
  
 | 
  it(`Step 5 - ${StepDialog.updateDialogValues(DialogSalesLevel.title, {Name: 'Sales level 01'})} ${StepDialog.clickOK()}`, async () => { 
 | 
    await dlgSalesLevel.updateDialogValues({Name: 'Sales level 01'}); 
 | 
    await dlgSalesLevel.clickOK(); 
 | 
  }); 
 | 
  
 | 
  it(`Step 6 - ${StepList.verifyRowExists(ListSalesLevel.title, {Name: 'Sales level 01'})}`, async () => { 
 | 
    await listSalesLevel.verifyRowExists({Name: 'Sales level 01'}); 
 | 
  }); 
 | 
  
 | 
  it(`Step 7 - ${StepList.focusListClickActionButton(ListSalesLevel.title, 'Create')}`, async () => { 
 | 
    dlgSalesLevel = await listSalesLevel.clickActionButton(appMP.abpSales.btnCreate); 
 | 
  }); 
 | 
  
 | 
  it(`Step 8 - ${StepDialog.updateDialogValues(DialogSalesLevel.title, {Name: 'Sales level 022'})} ${StepDialog.clickOK()}`, async () => { 
 | 
    await dlgSalesLevel.updateDialogValues({Name: 'Sales level 022'}); 
 | 
    await dlgSalesLevel.clickOK(); 
 | 
  }); 
 | 
  
 | 
  it(`Step 9 - ${StepList.verifyRowExists(ListSalesLevel.title, {Name: 'Sales level 022'})}`, async () => { 
 | 
    await listSalesLevel.verifyRowExists({Name: 'Sales level 022'}); 
 | 
  }); 
 | 
}); 
 |