mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-06 23:34:13 +02:00
Add unit tests for various services and functionalities
- Implement tests for ChatLine utility methods including color tag detection and stripping. - Create comprehensive tests for CommandHandler to validate command handling and status updates. - Add tests for DataMigrationService to ensure correct ANSI to color tag conversion. - Enhance FileValidationHelperTests with audio file validation tests. - Introduce ImageToAsciiServiceTests to verify image dimension retrieval. - Develop IrcMessageFormatterTests for message formatting and color tag conversion. - Add JwtTokenServiceTests to validate JWT token generation and hashing. - Implement LinkEmbedServiceTests for URL extraction and Open Graph tag parsing. - Update EchoHub.Tests.csproj to include necessary project references.
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
using EchoHub.Core.Constants;
|
||||
using EchoHub.Server.Services;
|
||||
using Xunit;
|
||||
|
||||
namespace EchoHub.Tests;
|
||||
|
||||
public class ImageToAsciiServiceTests
|
||||
{
|
||||
[Fact]
|
||||
public void GetDimensions_Small_Returns40x40()
|
||||
{
|
||||
var (w, h) = ImageToAsciiService.GetDimensions("s");
|
||||
Assert.Equal(40, w);
|
||||
Assert.Equal(40, h);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDimensions_Large_Returns120x120()
|
||||
{
|
||||
var (w, h) = ImageToAsciiService.GetDimensions("l");
|
||||
Assert.Equal(120, w);
|
||||
Assert.Equal(120, h);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDimensions_Default_Returns80x80()
|
||||
{
|
||||
var (w, h) = ImageToAsciiService.GetDimensions("m");
|
||||
Assert.Equal(HubConstants.AsciiArtWidth, w);
|
||||
Assert.Equal(HubConstants.AsciiArtHeightHalfBlock, h);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDimensions_Null_ReturnsDefault()
|
||||
{
|
||||
var (w, h) = ImageToAsciiService.GetDimensions(null);
|
||||
Assert.Equal(HubConstants.AsciiArtWidth, w);
|
||||
Assert.Equal(HubConstants.AsciiArtHeightHalfBlock, h);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDimensions_CaseInsensitive()
|
||||
{
|
||||
var (w1, h1) = ImageToAsciiService.GetDimensions("S");
|
||||
var (w2, h2) = ImageToAsciiService.GetDimensions("s");
|
||||
Assert.Equal(w1, w2);
|
||||
Assert.Equal(h1, h2);
|
||||
|
||||
var (w3, h3) = ImageToAsciiService.GetDimensions("L");
|
||||
var (w4, h4) = ImageToAsciiService.GetDimensions("l");
|
||||
Assert.Equal(w3, w4);
|
||||
Assert.Equal(h3, h4);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDimensions_UnknownSize_ReturnsDefault()
|
||||
{
|
||||
var (w, h) = ImageToAsciiService.GetDimensions("xl");
|
||||
Assert.Equal(HubConstants.AsciiArtWidth, w);
|
||||
Assert.Equal(HubConstants.AsciiArtHeightHalfBlock, h);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user