import { test } from '@playwright/test'; import { DashboardPage } from '../pages/Dashboard'; import setup from '../setup'; // Storing one additional dummy value "10" at end of every input array // this will trigger update to previously committed data const durationData = [ { format: 'h:mm (e.g. 1:23)', input: ['1:30', '30', '60', '80', '12:34', '15:130', '123123', '10'], output: ['01:30', '00:30', '01:00', '01:20', '12:34', '17:10', '2052:03'], }, { format: 'h:mm:ss (e.g. 3:45, 1:23:40)', input: ['11:22:33', '1234', '50', '1:1111', '1:11:1111', '15:130', '123123', '10'], output: ['11:22:33', '00:20:34', '00:00:50', '00:19:31', '01:29:31', '00:17:10', '34:12:03'], }, { format: 'h:mm:ss.s (e.g. 3:34.6, 1:23:40.0)', input: ['1234', '12:34', '12:34:56', '12:34:999', '12:999:56', '12:34:56.12', '12:34:56.199', '10'], output: ['00:20:34.0', '00:12:34.0', '12:34:56.0', '12:50:39.0', '28:39:56.0', '12:34:56.1', '12:34:56.2'], }, { format: 'h:mm:ss.ss (e.g. 3.45.67, 1:23:40.00)', input: ['1234', '12:34', '12:34:56', '12:34:999', '12:999:56', '12:34:56.12', '12:34:56.199', '10'], output: ['00:20:34.00', '00:12:34.00', '12:34:56.00', '12:50:39.00', '28:39:56.00', '12:34:56.12', '12:34:56.20'], }, { format: 'h:mm:ss.sss (e.g. 3.45.678, 1:23:40.000)', input: ['1234', '12:34', '12:34:56', '12:34:999', '12:999:56', '12:34:56.12', '12:34:56.199', '10'], output: [ '00:20:34.000', '00:12:34.000', '12:34:56.000', '12:50:39.000', '28:39:56.000', '12:34:56.012', '12:34:56.199', ], }, ]; test.describe.skip('Duration column', () => { let dashboard: DashboardPage; let context: any; test.beforeEach(async ({ page }) => { context = await setup({ page }); dashboard = new DashboardPage(page, context.project); }); test('Create duration column', async () => { await dashboard.treeView.createTable({ title: 'tablex' }); // Create duration column await dashboard.grid.column.create({ title: 'NC_DURATION_0', type: 'Duration', format: durationData[0].format, }); for (let i = 0; i < 8; i++) { await dashboard.grid.addNewRow({ index: i, columnHeader: 'NC_DURATION_0', value: i.toString(), networkValidation: false, }); } for (let i = 0; i < durationData.length; i++) { // Edit duration column await dashboard.grid.column.openEdit({ title: 'NC_DURATION_0', type: 'Duration', format: durationData[i].format, }); await dashboard.grid.column.save({ isUpdated: true }); for (let j = 0; j < durationData[i].input.length; j++) { await dashboard.grid.editRow({ index: j, columnHeader: 'NC_DURATION_0', value: durationData[i].input[j], networkValidation: false, }); } for (let j = 0; j < durationData[i].output.length; j++) { await dashboard.grid.cell.verify({ index: j, columnHeader: 'NC_DURATION_0', value: durationData[i].output[j], }); } } }); });