using ScadaLink.Commons.Entities.Notifications; using ScadaLink.Commons.Types.Enums; namespace ScadaLink.Commons.Tests.Entities; /// /// Verifies the outbox entity's constructor defaults /// and null-argument guards on required reference-type parameters. /// public class NotificationEntityTests { [Fact] public void Constructor_SetsDefaults() { var n = new Notification("id-1", NotificationType.Email, "ops-team", "subj", "body", "SiteA"); Assert.Equal(NotificationStatus.Pending, n.Status); Assert.Equal(0, n.RetryCount); Assert.Equal("id-1", n.NotificationId); Assert.Equal(NotificationType.Email, n.Type); Assert.Equal("ops-team", n.ListName); Assert.Equal("SiteA", n.SourceSiteId); } [Fact] public void Constructor_NullListName_Throws() => Assert.Throws( () => new Notification("id", NotificationType.Email, null!, "s", "b", "SiteA")); [Fact] public void Constructor_NullNotificationId_Throws() => Assert.Throws( () => new Notification(null!, NotificationType.Email, "list", "s", "b", "SiteA")); }