public void ZCurrentTask_Deprioritize_Failures(ZCurrentTask curTask, string description)
        {
            // Arrange
            currentTask = curTask;

            Func <ZCurrentTask, bool> TryDeprioritize = c =>
            {
                try
                {
                    c.Deprioritize();
                }
                catch (ZCurrentTask.DeprioritizationException)
                {
                    return(false);
                }
                return(true);
            };

            // Assume
            Assume.That(currentTask.Priority, Is.False);

            // Act
            bool isSuccessful = TryDeprioritize(currentTask);

            // Assert
            Assert.That(currentTask.Priority, Is.False);
        }
        public void ZCurrentTask_DeprioritizePrioritizedScheduledTask()
        {
            // Arrange
            currentTask = ZCurrentTask.MakeCurrentTaskWithPriority(scheduledTask);

            // Assume
            Assume.That(currentTask.Priority, Is.True);

            // Act
            currentTask.Deprioritize();

            // Assert
            Assert.That(currentTask.Priority, Is.False);
        }