public void IsSatisfiedBy_WhenTicketIsOnHold_ReturnsFalse()
        {
            var ticket = CreateTicket(pausedOn: DateTimeOffset.UtcNow);
            var spec   = new GetPendingFeedbackTickets();
            var result = spec.IsSatisfiedBy(ticket);

            Assert.IsFalse(result, "Should return false when status is OnHold.");
        }
        public void IsSatisfiedBy_WhenTicketIsOpen_ReturnsFalse()
        {
            var ticket = CreateTicket();
            var spec   = new GetPendingFeedbackTickets();
            var result = spec.IsSatisfiedBy(ticket);

            Assert.IsFalse(result, "Should return false when status is Open.");
        }
        public void IsSatisfiedBy_WhenTicketIsOverdue_ReturnsFalse()
        {
            var ticket = CreateTicket(dueDate: DateTimeOffset.UtcNow.AddDays(-1));
            var spec   = new GetPendingFeedbackTickets();
            var result = spec.IsSatisfiedBy(ticket);

            Assert.IsFalse(result, "Should return false when status is Overdue.");
        }
        public void IsSatisfiedBy_WhenTicketIsPendingFeedback_ReturnsTrue()
        {
            var ticket = CreateTicket(feedbackRequestedOn: DateTimeOffset.UtcNow);
            var spec   = new GetPendingFeedbackTickets();
            var result = spec.IsSatisfiedBy(ticket);

            Assert.IsTrue(result, "Should return true when status is PendingFeedback.");
        }