/
VFlov
/
NotificationService_1
Обзор
Документация
Войти
/
VFlov
/
NotificationService_1
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
tests/NotificationService.Tests/Models/NotificationMessageTests.cs
60 строк
2 KB
VFlov
first_commit
27 ноя 2025, 11:43
27 ноя 2025, 11:43
819df67
Код
Авторство
О чём код?
using FluentAssertions; using NotificationService.Shared.Models; using Xunit; namespace NotificationService.Tests.Models; public class NotificationMessageTests { [Fact] public void NotificationMessage_ShouldInitializeWithDefaultValues() { // Arrange & Act var message = new NotificationMessage(); // Assert message.Id.Should().NotBeEmpty(); message.Metadata.Should().NotBeNull(); message.CreatedAt.Should().BeCloseTo(DateTime.UtcNow, TimeSpan.FromSeconds(1)); message.RetryCount.Should().Be(0); message.MaxRetries.Should().Be(3); } [Fact] public void NotificationMessage_ShouldSetProperties() { // Arrange var message = new NotificationMessage { Type = NotificationType.Email, Recipient = "test@example.com", Subject = "Test", Content = "Test content" }; // Assert message.Type.Should().Be(NotificationType.Email); message.Recipient.Should().Be("test@example.com"); message.Subject.Should().Be("Test"); message.Content.Should().Be("Test content"); } [Fact] public void NotificationMessage_ShouldHandleMetadata() { // Arrange var message = new NotificationMessage { Metadata = new Dictionary<string, string> { { "key1", "value1" }, { "key2", "value2" } } }; // Assert message.Metadata.Should().ContainKey("key1"); message.Metadata["key1"].Should().Be("value1"); message.Metadata.Should().HaveCount(2); } }