Added Unit Tests

This commit is contained in:
GraceSolutions
2025-04-10 16:13:59 -04:00
parent 2a80e82288
commit 992e8b8695
15 changed files with 1109 additions and 36 deletions
@@ -0,0 +1,89 @@
using NUnit.Framework;
using System;
using WindowsNotifications.Models;
namespace WindowsNotifications.Tests
{
[TestFixture]
public class NotificationResultTests
{
[Test]
public void Constructor_SetsNotificationId()
{
// Arrange
string notificationId = "test-id";
// Act
var result = new NotificationResult(notificationId);
// Assert
Assert.AreEqual(notificationId, result.NotificationId);
}
[Test]
public void Constructor_SetsDefaultValues()
{
// Arrange
string notificationId = "test-id";
// Act
var result = new NotificationResult(notificationId);
// Assert
Assert.IsFalse(result.Displayed);
Assert.IsFalse(result.Activated);
Assert.IsFalse(result.Dismissed);
Assert.IsNull(result.ClickedButtonId);
Assert.IsNull(result.ClickedButtonText);
Assert.IsNull(result.ClickedButtonArgument);
Assert.IsNull(result.ErrorMessage);
Assert.IsNull(result.InteractionTime);
// CreatedTime should be close to now
Assert.Less((DateTime.Now - result.CreatedTime).TotalSeconds, 5);
}
[Test]
public void Error_CreatesErrorResult()
{
// Arrange
string notificationId = "test-id";
string errorMessage = "Test error message";
// Act
var result = NotificationResult.Error(notificationId, errorMessage);
// Assert
Assert.AreEqual(notificationId, result.NotificationId);
Assert.AreEqual(errorMessage, result.ErrorMessage);
Assert.IsFalse(result.Displayed);
}
[Test]
public void Properties_CanBeSet()
{
// Arrange
var result = new NotificationResult("test-id");
DateTime interactionTime = DateTime.Now;
// Act
result.Displayed = true;
result.Activated = true;
result.Dismissed = true;
result.ClickedButtonId = "button-id";
result.ClickedButtonText = "Button Text";
result.ClickedButtonArgument = "button-arg";
result.ErrorMessage = "Error message";
result.InteractionTime = interactionTime;
// Assert
Assert.IsTrue(result.Displayed);
Assert.IsTrue(result.Activated);
Assert.IsTrue(result.Dismissed);
Assert.AreEqual("button-id", result.ClickedButtonId);
Assert.AreEqual("Button Text", result.ClickedButtonText);
Assert.AreEqual("button-arg", result.ClickedButtonArgument);
Assert.AreEqual("Error message", result.ErrorMessage);
Assert.AreEqual(interactionTime, result.InteractionTime);
}
}
}