From b5ebfb262cc84e904a4d37dc819d930c973885f1 Mon Sep 17 00:00:00 2001 From: Olga Mazurina Date: Thu, 31 Aug 2023 14:04:11 +0200 Subject: [PATCH] #3168 - add a loop --- .../MOL-Files/mol-files.spec.ts | 189 ++++++------------ ...-for-M-ALS-1-2---open-1-chromium-linux.png | Bin 0 -> 10349 bytes 2 files changed, 61 insertions(+), 128 deletions(-) create mode 100644 ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts-snapshots/MDL-Molfile-v2000-Correct-padding-for-M-ALS-1-2---open-1-chromium-linux.png diff --git a/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts b/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts index 8bbe54dacf..50e6bd0787 100644 --- a/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts +++ b/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts @@ -544,19 +544,68 @@ test.describe('', () => { await page.goto(''); }); - test('Open and Save files - Open/Save structure with bond properties', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1852 - * Description: Structure with the correct Bond properties is correctly represented + test.describe('', () => { + /* + * Test case: EPMLSOPKET-1852, 1856, 1874, 1890, 1895, 1979, 8914, 12966, 4731, 5259 + * Description: The saved structure is correctly rendered on the canvas */ - - await openFileAndAddToCanvas( - 'Molfiles-V2000/all_bond_properties.mol', - page, - ); - await takeEditorScreenshot(page); + const files = [ + { + testName: + 'Open and Save files - Open/Save structure with bond properties', + path: 'Molfiles-V2000/all_bond_properties.mol', + }, + { + testName: + 'Open and Save file - Open/Save Alias and Pseudoatoms 1/2 - open', + path: 'Molfiles-V2000/mol_1856_to_open.mol', + }, + { + testName: + 'Open and Save file - Open/Save V3000 mol file contains Rgroup 1/2 - open', + path: 'Molfiles-V3000/rgroup-V3000.mol', + }, + { + testName: + 'Open and Save file - Open/Save V3000 mol file contains more than 900 symbols 1/2 - open', + path: 'Molfiles-V3000/more_900_atoms.mol', + }, + { + testName: + 'Open and Save file - Open/Save V3000 mol file contains Sgroup 1/2 - open', + path: 'Molfiles-V3000/multi_V3000.mol', + }, + { + testName: 'Open and Save file - Save structure as *.mol V3000', + path: 'Molfiles-V3000/multi_V3000.mol', + }, + { + testName: 'MDL Molfile v2000: Correct padding for M ALS 1/2 - open', + path: 'Molfiles-V2000/molfile_with_als.mol', + }, + { + testName: + 'Open and Save file - Open structure with R-Group from v3000 mol file', + path: 'Molfiles-V3000/rgroup-V3000.mol', + }, + { + testName: + 'Open and Save file - Don`t creates invalid molfiles with "NaN"', + path: 'Molfiles-V2000/mol_4731_to_open.mol', + }, + { + testName: + 'Open and Save file - Functional group name layout close to attachment point', + path: 'Molfiles-V2000/display-abbrev-groups-example.mol', + }, + ]; + + for (const file of files) { + test(`${file.testName}`, async ({ page }) => { + await openFileAndAddToCanvas(file.path, page); + await takeEditorScreenshot(page); + }); + } }); test.fixme( @@ -595,18 +644,6 @@ test.describe('', () => { }, ); - test('Open and Save file - Open/Save Alias and Pseudoatoms 1/2 - open', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1856(1) - * Description: The saved structure is correctly rendered on the canvas - */ - - await openFileAndAddToCanvas('Molfiles-V2000/mol_1856_to_open.mol', page); - await takeEditorScreenshot(page); - }); - test('Open and Save file - Open/Save Alias and Pseudoatoms 2/2 - save', async ({ page, }) => { @@ -636,19 +673,6 @@ test.describe('', () => { expect(molFile).toEqual(molFileExpected); }); - test('Open and Save file - Open/Save V3000 mol file contains Rgroup 1/2 - open', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1874(1) - * Description: Structure is correctly generated from Molstring - * and vise versa molstring is correctly generated from structure. - */ - - await openFileAndAddToCanvas('Molfiles-V3000/rgroup-V3000.mol', page); - await takeEditorScreenshot(page); - }); - test('Open and Save file - Open/Save V3000 mol file contains Rgroup 2/2 - save', async ({ page, }) => { @@ -772,19 +796,6 @@ test.describe('', () => { }, ); - test('Open and Save file - Open/Save V3000 mol file contains more than 900 symbols 1/2 - open', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1890(1) - * Description: Structure is correctly generated from Molstring - * and vise versa molstring is correctly generated from structure. - */ - - await openFileAndAddToCanvas('Molfiles-V3000/more_900_atoms.mol', page); - await takeEditorScreenshot(page); - }); - test('Open and Save file - Open/Save V3000 mol file contains more than 900 symbols 2/2 - save', async ({ page, }) => { @@ -867,19 +878,6 @@ test.describe('', () => { expect(molFile).toEqual(molFileExpected); }); - test('Open and Save file - Open/Save V3000 mol file contains Sgroup 1/2 - open', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1895(1) - * Description: Structure is correctly generated from Molstring - * and vise versa molstring is correctly generated from structure. - */ - - await openFileAndAddToCanvas('Molfiles-V3000/multi_V3000.mol', page); - await takeEditorScreenshot(page); - }); - test('Open and Save file - Open/Save V3000 mol file contains Sgroup 2/2 - save', async ({ page, }) => { @@ -907,31 +905,6 @@ test.describe('', () => { expect(molFile).toEqual(molFileExpected); }); - test('Open and Save file - Save structure as *.mol V3000', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-1979 - * Description: Structure is displayed correctly - * */ - - await openFileAndAddToCanvas('Molfiles-V3000/multi_V3000.mol', page); - await takeEditorScreenshot(page); - }); - - test('MDL Molfile v2000: Correct padding for M ALS 1/2 - open', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-8914(1) - * Description: Structure is correctly generated from Molstring - * and vise versa molstring is correctly generated from structure. - */ - - await openFileAndAddToCanvas('Molfiles-V2000/molfile_with_als.mol', page); - await takeEditorScreenshot(page); - }); - test('MDL Molfile v2000: Correct padding for M ALS 2/2 - check padding', async ({ page, }) => { @@ -997,44 +970,4 @@ test.describe('', () => { expect(molFile).toEqual(molFileExpected); }, ); - - test('Open and Save file - Open structure with R-Group from v3000 mol file', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-12966 - * Description: Structure is displayed correctly - * */ - - await openFileAndAddToCanvas('Molfiles-V3000/rgroup-V3000.mol', page); - await takeEditorScreenshot(page); - }); - - test('Open and Save file - Don`t creates invalid molfiles with "NaN"', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-4731 - * Description: Preview doesn't contains NaN - * */ - - await openFileAndAddToCanvas('Molfiles-V2000/mol_4731_to_open.mol', page); - await takeEditorScreenshot(page); - }); - - test('Open and Save file - Functional group name layout close to attachment point', async ({ - page, - }) => { - /** - * Test case: EPMLSOPKET-5259 - * Description: Functional group label is located at the right location - * */ - - await openFileAndAddToCanvas( - 'Molfiles-V2000/display-abbrev-groups-example.mol', - page, - ); - - await takeEditorScreenshot(page); - }); }); diff --git a/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts-snapshots/MDL-Molfile-v2000-Correct-padding-for-M-ALS-1-2---open-1-chromium-linux.png b/ketcher-autotests/tests/File-Management/Open-And-Save-Files/MOL-Files/mol-files.spec.ts-snapshots/MDL-Molfile-v2000-Correct-padding-for-M-ALS-1-2---open-1-chromium-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..186cc2118cc55448ca2fc328e0829bb54ea463fc GIT binary patch literal 10349 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