Browse Source

FileExtensionToColorConverter tests added

tomaszkot 3 years ago
parent
commit
eaeee053c2

+ 1 - 1
PixiEditor/Helpers/Converters/FileExtensionToColorConverter.cs

@@ -13,7 +13,7 @@ namespace PixiEditor.Helpers.Converters
     {
         private static readonly Dictionary<string, SolidColorBrush> extensions2Brushes;
 
-        private static readonly SolidColorBrush UnknownBrush = ColorBrush(100, 100, 100);
+        public static readonly SolidColorBrush UnknownBrush = ColorBrush(100, 100, 100);
 
         static FileExtensionToColorConverter()
         {

+ 1 - 1
PixiEditor/Helpers/SupportedFilesHelper.cs

@@ -7,7 +7,7 @@ using System.Linq;
 
 namespace PixiEditor.Helpers
 {
-    internal class SupportedFilesHelper
+    public class SupportedFilesHelper
     {
         static ImageFormat[] _imageFormats = new[] { ImageFormat.Png, ImageFormat.Jpeg, ImageFormat.Bmp, ImageFormat.Gif, /*ImageFormat.Tiff */};
         static Dictionary<string, List<string>> extensions;

+ 38 - 0
PixiEditorTests/HelpersTests/ConvertersTests/FileExtensionToColorConverterTests.cs

@@ -0,0 +1,38 @@
+using PixiEditor.Helpers;
+using PixiEditor.Helpers.Converters;
+using System.Globalization;
+using System.Linq;
+using System.Windows.Media;
+using Xunit;
+
+namespace PixiEditorTests.HelpersTests.ConvertersTests
+{
+    public class FileExtensionToColorConverterTests
+    {
+        private static SolidColorBrush GetTypedColor(string ext)
+        {
+            var converter = new FileExtensionToColorConverter();
+            object value = converter.Convert(ext, typeof(int), null, CultureInfo.CurrentCulture);
+            Assert.IsType<SolidColorBrush>(value);
+            return value as SolidColorBrush;
+        }
+
+        [Fact]
+        public void TestThatEachFormatHasColor()
+        {
+            SupportedFilesHelper.GetAllSupportedExtensions().ToList().ForEach(i =>
+            {
+                var typed = GetTypedColor(i);
+                Assert.NotEqual(FileExtensionToColorConverter.UnknownBrush, typed);
+            });
+        }
+               
+        [Fact]
+        public void TestThatUnsupportedFormatHasDefaultColor()
+        {
+            var converter = new FileExtensionToColorConverter();
+            var typed = GetTypedColor(".abc");
+            Assert.Equal(FileExtensionToColorConverter.UnknownBrush, typed);
+        }
+    }
+}