From 29096b965052515fe6ff07861aeff93f641fb650 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 25 Oct 2025 06:57:15 +0000 Subject: [PATCH] Add UI tests for template deletion functionality - Added DeleteTemplateLayout test to verify template deletion works - Added CannotDeleteBlankTemplate test to ensure Blank template cannot be deleted - Tests verify both UI behavior and file persistence Co-authored-by: niels9001 <9866362+niels9001@users.noreply.github.com> --- .../DeleteLayoutTests.cs | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/modules/fancyzones/FancyZonesEditor.UITests/DeleteLayoutTests.cs b/src/modules/fancyzones/FancyZonesEditor.UITests/DeleteLayoutTests.cs index a8616e9a42..8049060984 100644 --- a/src/modules/fancyzones/FancyZonesEditor.UITests/DeleteLayoutTests.cs +++ b/src/modules/fancyzones/FancyZonesEditor.UITests/DeleteLayoutTests.cs @@ -363,5 +363,42 @@ namespace Microsoft.FancyZonesEditor.UITests Assert.AreEqual(0, layoutHotkeyCount); } + + [TestMethod("FancyZonesEditor.Basic.DeleteTemplateLayout")] + [TestCategory("FancyZones Editor #5")] + public void DeleteTemplateLayout() + { + var deletedLayoutName = TestConstants.TemplateLayoutNames[LayoutType.Focus]; + var initialTemplateCount = 6; // Blank, Focus, Columns, Rows, Grid, PriorityGrid + + // Delete Focus template layout via context menu + FancyZonesEditorHelper.ClickContextMenuItem(Session, deletedLayoutName, FancyZonesEditorHelper.ElementName.Delete); + Session.SendKeySequence(Key.Tab, Key.Enter); + + // verify the template layout is removed from UI + Assert.IsTrue(Session.FindAll(deletedLayoutName).Count == 0); + + // check the template layouts file + var layoutTemplates = new LayoutTemplates(); + var data = layoutTemplates.Read(layoutTemplates.File); + Assert.AreEqual(initialTemplateCount - 1, data.LayoutTemplates.Count); + Assert.IsFalse(data.LayoutTemplates.Exists(x => x.Type == LayoutType.Focus.TypeToString())); + } + + [TestMethod("FancyZonesEditor.Basic.CannotDeleteBlankTemplate")] + [TestCategory("FancyZones Editor #5")] + public void CannotDeleteBlankTemplate() + { + var blankLayoutName = TestConstants.TemplateLayoutNames[LayoutType.Blank]; + + // Try to open context menu on Blank template - should not have delete option + Session.Find(blankLayoutName).Find