From 0442ddc739d6e760bdeec105578741a29fc3dbfb Mon Sep 17 00:00:00 2001 From: Nhu Dinh <150406148+nhudinh0309@users.noreply.github.com> Date: Mon, 21 Jul 2025 10:21:21 +0700 Subject: [PATCH] V16 Added acceptance tests for the regression issue #16985 (#19712) * Updated tests for adding a thumbnail to a block grid * Added tests for adding a block thumbnail * Make tests run in the pipeline * Reverted npm command --- .../Block/BlockGridBlockAdvanced.spec.ts | 10 ++++----- .../BlockListEditor/BlockListBlocks.spec.ts | 21 +++++++++++++++++-- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockGrid/Block/BlockGridBlockAdvanced.spec.ts b/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockGrid/Block/BlockGridBlockAdvanced.spec.ts index a678fe9d99..d05b35237c 100644 --- a/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockGrid/Block/BlockGridBlockAdvanced.spec.ts +++ b/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockGrid/Block/BlockGridBlockAdvanced.spec.ts @@ -240,27 +240,27 @@ test('can remove a icon color from a block', async ({umbracoApi, umbracoUi}) => expect(await umbracoApi.dataType.doesBlockEditorBlockContainIconColor(blockGridEditorName, contentElementTypeId, '')).toBeTruthy(); }); -// TODO: Remove skip when the code is updated due to UI changes -test.skip('can add a thumbnail to a block', async ({umbracoApi, umbracoUi}) => { +test('can add a thumbnail to a block', {tag: '@smoke'}, async ({umbracoApi, umbracoUi}) => { // Arrange const mediaName = 'TestMedia'; await umbracoApi.media.ensureNameNotExists(mediaName); - await umbracoApi.media.createDefaultMediaWithImage(mediaName); + const mediaId = await umbracoApi.media.createDefaultMediaWithImage(mediaName); const textStringData = await umbracoApi.dataType.getByName(dataTypeName); const contentElementTypeId = await umbracoApi.documentType.createDefaultElementType(elementTypeName, groupName, dataTypeName, textStringData.id); await umbracoApi.dataType.createBlockGridWithABlock(blockGridEditorName, contentElementTypeId); - const mediaUrl = await umbracoApi.media.getMediaPathByName(mediaName); + const mediaUrl = await umbracoApi.media.getMediaUrl(mediaId); // Act await umbracoUi.dataType.goToDataType(blockGridEditorName); await umbracoUi.dataType.goToBlockWithName(elementTypeName); await umbracoUi.dataType.goToBlockAdvancedTab(); - await umbracoUi.dataType.chooseBlockThumbnailWithPath(mediaUrl.fileName, mediaUrl.mediaPath); + await umbracoUi.dataType.chooseBlockThumbnailWithPath(mediaUrl); await umbracoUi.dataType.clickSubmitButton(); await umbracoUi.dataType.clickSaveButton(); // Assert await umbracoUi.dataType.isSuccessStateVisibleForSaveButton(); + await umbracoUi.dataType.doesBlockHaveThumbnailImage(mediaUrl); }); // TODO: Remove skip when the code is updated. Currently it is missing the assertion steps diff --git a/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockListEditor/BlockListBlocks.spec.ts b/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockListEditor/BlockListBlocks.spec.ts index 01c75a1e14..e2f5be0f5e 100644 --- a/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockListEditor/BlockListBlocks.spec.ts +++ b/tests/Umbraco.Tests.AcceptanceTest/tests/DefaultConfig/DataType/BlockListEditor/BlockListBlocks.spec.ts @@ -414,9 +414,26 @@ test('can disable hide content editor in a block', async ({umbracoApi, umbracoUi expect(blockData.values[0].value[0].forceHideContentEditorInOverlay).toEqual(false); }); -// TODO: Thumbnails are not showing in the UI -test.skip('can add a thumbnail to a block ', {tag: '@smoke'}, async ({umbracoApi, umbracoUi}) => { +test('can add a thumbnail to a block', {tag: '@release'}, async ({umbracoApi, umbracoUi}) => { + // Arrange + const mediaName = 'TestMedia'; + await umbracoApi.media.ensureNameNotExists(mediaName); + const mediaId = await umbracoApi.media.createDefaultMediaWithImage(mediaName); + const textStringData = await umbracoApi.dataType.getByName(dataTypeName); + const contentElementTypeId = await umbracoApi.documentType.createDefaultElementType(elementTypeName, groupName, dataTypeName, textStringData.id); + await umbracoApi.dataType.createBlockListDataTypeWithABlock(blockListEditorName, contentElementTypeId); + const mediaUrl = await umbracoApi.media.getMediaUrl(mediaId); + // Act + await umbracoUi.dataType.goToDataType(blockListEditorName); + await umbracoUi.dataType.goToBlockWithName(elementTypeName); + await umbracoUi.dataType.chooseBlockThumbnailWithPath(mediaUrl); + await umbracoUi.dataType.clickSubmitButton(); + await umbracoUi.dataType.clickSaveButton(); + + // Assert + await umbracoUi.dataType.isSuccessStateVisibleForSaveButton(); + await umbracoUi.dataType.doesBlockHaveThumbnailImage(mediaUrl); }); // TODO: Thumbnails are not showing in the UI