Репозиторий хранил фронтенд в CRLF, а часть бэкенда — вперемешку, хотя CI и Docker-сборка работают под Linux. Прибиваем LF атрибутом `* text=auto eol=lf` и разово нормализуем дерево, чтобы форматтеры не переписывали файлы целиком на каждом прогоне. Коммит чисто механический: изменений содержимого нет, только концы строк. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
78 lines
2.5 KiB
C#
78 lines
2.5 KiB
C#
using TeleWave.Application.Admin.Users.CreateUser;
|
|
using TeleWave.Application.Admin.Users.ResetPassword;
|
|
using TeleWave.Application.Broadcast;
|
|
using TeleWave.Application.Broadcast.Bumpers;
|
|
using TeleWave.Application.Broadcast.UpdateChannelSettings;
|
|
using TeleWave.Domain.Broadcast;
|
|
using Xunit;
|
|
|
|
namespace TeleWave.Application.Tests.Validators;
|
|
|
|
public class ValidatorTests
|
|
{
|
|
[Fact]
|
|
public void UpdateBumperTextVariant_ChecksLengthsAndWeight()
|
|
{
|
|
var v = new UpdateBumperTextVariantCommandValidator();
|
|
|
|
var good = new UpdateBumperTextVariantCommand(
|
|
Guid.NewGuid(),
|
|
Guid.NewGuid(),
|
|
Guid.NewGuid(),
|
|
"Name",
|
|
BumperTextKind.NowNext,
|
|
"NOW",
|
|
"NEXT",
|
|
"l1",
|
|
"l2",
|
|
BumperTrigger.Both,
|
|
3
|
|
);
|
|
Assert.True(v.Validate(good).IsValid);
|
|
|
|
Assert.False(v.Validate(good with { Name = "" }).IsValid);
|
|
Assert.False(v.Validate(good with { Weight = -1 }).IsValid);
|
|
Assert.False(v.Validate(good with { Line1 = new string('x', 121) }).IsValid);
|
|
}
|
|
|
|
[Fact]
|
|
public void UpdateChannelSettings_ChecksRanges()
|
|
{
|
|
var v = new UpdateChannelSettingsCommandValidator();
|
|
var bumper = new BumperSettingsInput(BumperFont.Sans, BumperSelection.WeightedRandom);
|
|
|
|
var good = new UpdateChannelSettingsCommand(
|
|
Guid.NewGuid(),
|
|
"Name",
|
|
true,
|
|
true,
|
|
bumper,
|
|
null
|
|
);
|
|
Assert.True(v.Validate(good).IsValid);
|
|
|
|
Assert.False(v.Validate(good with { Name = "" }).IsValid);
|
|
}
|
|
|
|
[Fact]
|
|
public void ResetUserPassword_RequiresMinLength()
|
|
{
|
|
var v = new ResetUserPasswordCommandValidator();
|
|
|
|
Assert.True(v.Validate(new ResetUserPasswordCommand(Guid.NewGuid(), "Password1")).IsValid);
|
|
Assert.False(v.Validate(new ResetUserPasswordCommand(Guid.NewGuid(), "short")).IsValid);
|
|
Assert.False(v.Validate(new ResetUserPasswordCommand(Guid.Empty, "Password1")).IsValid);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateUser_ChecksNameAndPassword()
|
|
{
|
|
var v = new CreateUserCommandValidator();
|
|
|
|
Assert.True(v.Validate(new CreateUserCommand("bob", "Password1", Guid.NewGuid())).IsValid);
|
|
Assert.False(v.Validate(new CreateUserCommand("ab", "Password1", Guid.NewGuid())).IsValid);
|
|
Assert.False(v.Validate(new CreateUserCommand("bob", "short", Guid.NewGuid())).IsValid);
|
|
Assert.False(v.Validate(new CreateUserCommand("bob", "Password1", Guid.Empty)).IsValid);
|
|
}
|
|
}
|