From bf7b762576e42609662918e656296372ae95442e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 5 Feb 2026 15:19:36 +0000 Subject: [PATCH] Add validation to prevent empty/null names in ImageResizer settings Co-authored-by: yeelam-gordon <73506701+yeelam-gordon@users.noreply.github.com> --- .../Settings.UI.Library/ImageSize.cs | 9 ++++- .../ViewModelTests/ImageResizer.cs | 39 +++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/src/settings-ui/Settings.UI.Library/ImageSize.cs b/src/settings-ui/Settings.UI.Library/ImageSize.cs index 39b712d67f..8c5d252e5c 100644 --- a/src/settings-ui/Settings.UI.Library/ImageSize.cs +++ b/src/settings-ui/Settings.UI.Library/ImageSize.cs @@ -69,7 +69,14 @@ public partial class ImageSize : INotifyPropertyChanged, IHasId public string Name { get => _name; - set => SetProperty(ref _name, value); + set + { + // Prevent setting empty or null names + if (!string.IsNullOrWhiteSpace(value)) + { + SetProperty(ref _name, value); + } + } } [JsonPropertyName("fit")] diff --git a/src/settings-ui/Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs b/src/settings-ui/Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs index 15eac53645..413194f7c7 100644 --- a/src/settings-ui/Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs +++ b/src/settings-ui/Settings.UI.UnitTests/ViewModelTests/ImageResizer.cs @@ -313,5 +313,44 @@ namespace ViewModelTests Assert.AreEqual(50, imageSize.Width); Assert.AreEqual(50, imageSize.Height); } + + [TestMethod] + public void ImageSizeNameShouldNotBeSetToEmptyOrNull() + { + // arrange + ImageSize imageSize = new ImageSize() + { + Id = 0, + Name = "Original Name", + Fit = ResizeFit.Fit, + Width = 100, + Height = 100, + Unit = ResizeUnit.Pixel, + }; + + // Act - try to set name to empty string + imageSize.Name = string.Empty; + + // Assert - name should remain unchanged + Assert.AreEqual("Original Name", imageSize.Name); + + // Act - try to set name to null + imageSize.Name = null; + + // Assert - name should remain unchanged + Assert.AreEqual("Original Name", imageSize.Name); + + // Act - try to set name to whitespace only + imageSize.Name = " "; + + // Assert - name should remain unchanged + Assert.AreEqual("Original Name", imageSize.Name); + + // Act - set name to valid value + imageSize.Name = "New Valid Name"; + + // Assert - name should be updated + Assert.AreEqual("New Valid Name", imageSize.Name); + } } }