SRP code improvements

This commit is contained in:
DESKTOP\Administrator
2026-05-17 03:04:46 +03:00
parent 43ebb4c7fa
commit 09e93acece
11 changed files with 157 additions and 271 deletions
+26 -23
View File
@@ -2,7 +2,8 @@ using SixLabors.Fonts;
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.PixelFormats;
using Watermark.Net.src.WatermarkNet.Core;
using Watermark.Net.src.WatermarkNet.Types;
using Watermark.Net.src.WatermarkNet.Enums;
using Watermark.Net.src.WatermarkNet.Models.Definitions;
namespace UnitTest
{
@@ -13,7 +14,6 @@ namespace UnitTest
public void TextWatermarkTest()
{
var watermarker = new Watermarker();
var watermark = new TextWatermark();
var availableFont = SystemFonts.Families.FirstOrDefault();
if (availableFont == default)
@@ -21,11 +21,13 @@ namespace UnitTest
throw new Exception("No available fonts found in the system");
}
watermark.Text = "Test";
watermark.Color = Color.White;
watermark.Font = availableFont.CreateFont(1);
watermark.Position = Watermark.Net.src.WatermarkNet.Enums.ImagePosition.BottomCenter;
watermark.RotateAngle = 90;
var watermark = new TextWatermark{
Font = availableFont.CreateFont(1),
Text = "Test",
Style = { Color = Color.White },
Layout = { Position = ImagePosition.BottomCenter , RotateAngle = 90 }
};
var resultedImage = watermarker.ProcessImage("TestImages/2.png", "test/text", watermark);
Assert.IsTrue(File.Exists(resultedImage.Path));
@@ -36,11 +38,12 @@ namespace UnitTest
public void ImageWatermarkTest()
{
var watermarker = new Watermarker();
var watermark = new ImageWatermark();
var watermark = new ImageWatermark {
ImagePath = "TestImages/sample_wm.png",
Layout = { Position = ImagePosition.Center, Scale = 1 },
Style = { Opacity = 1 }
};
watermark.ImagePath = "TestImages/sample_wm.png";
watermark.Position = Watermark.Net.src.WatermarkNet.Enums.ImagePosition.Center;
watermark.Scale = 1;
var resultedImage = watermarker.ProcessImage("TestImages/2.png", "test/image", watermark);
Assert.IsTrue(File.Exists(resultedImage.Path));
@@ -51,7 +54,6 @@ namespace UnitTest
public void TextWatermarkDirectoryProccessTest()
{
var watermarker = new Watermarker("test/text/pave");
var watermark = new TextWatermark();
var availableFont = SystemFonts.Families.FirstOrDefault();
if (availableFont == default)
@@ -59,12 +61,13 @@ namespace UnitTest
throw new Exception("No available fonts found in the system");
}
watermark.Text = "Test";
watermark.Color = Rgba32.ParseHex("FFFFFF50");
watermark.Font = availableFont.CreateFont(1);
watermark.Scale = 1f;
watermark.Position = Watermark.Net.src.WatermarkNet.Enums.ImagePosition.TopLeft;
watermark.Pave = true;
var watermark = new TextWatermark {
Text = "Test",
Font = availableFont.CreateFont(1),
Style = { Color = Rgba32.ParseHex("FFFFFF50"), Pave = true },
Layout = { Scale = 1f, Position = ImagePosition.TopLeft }
};
watermarker.ProcessDirectory("TestImages", watermark);
Assert.IsTrue(Directory.GetFiles(watermarker.OutputDir)?.Length > 0);
@@ -74,12 +77,12 @@ namespace UnitTest
public void ImageWatermarkDirectoryProccessTest()
{
var watermarker = new Watermarker("test/image/pave");
var watermark = new ImageWatermark();
var watermark = new ImageWatermark {
ImagePath = "TestImages/sample_wm.png",
Layout = { Position = ImagePosition.Center, Scale = 1},
Style = { Pave = true, Opacity = 1}
};
watermark.ImagePath = "TestImages/sample_wm.png";
watermark.Position = Watermark.Net.src.WatermarkNet.Enums.ImagePosition.Center;
watermark.Scale = 1;
watermark.Pave = true;
watermarker.ProcessDirectory("TestImages", watermark);
Assert.IsTrue(Directory.GetFiles(watermarker.OutputDir)?.Length > 0);