public void ItEnqueuesAndReceivesDelegatesThatAreRunnable() { var testFixture = new TaskQueueTestFixture(nameof(ItEnqueuesAndReceivesDelegatesThatAreRunnable)); testFixture.EnsureSemaphoreDoesntExist(); testFixture.PushPopExecuteWriteSemaphore(); testFixture.EnsureSemaphore(); }
public void ItContinuesListeningWhenATaskThrowsAnException() { var waitTime = 5000; var taskClient = new TaskClient(TaskQueue.Redis("localhost:6379", nameof(ItContinuesListeningWhenATaskThrowsAnException))); var semaphoreFile = Path.GetTempFileName(); taskClient.TaskQueue.Enqueue(() => Throw()); taskClient.TaskQueue.Enqueue(() => TaskQueueTestFixture.WriteSempaphore(semaphoreFile)); var task = Task.Run(() => taskClient.Listen()); Thread.Sleep(waitTime); taskClient.CancelListen(); task.Wait(); TaskQueueTestFixture.EnsureSemaphore(semaphoreFile); }
public async Task ItContinuesListeningWhenATaskThrowsAnException() { var waitTime = 5000; var taskQueue = TaskQueueTestFixture.UniqueRedisTaskQueue(); var taskClient = new TaskClient(taskQueue); var semaphoreFile = Path.GetTempFileName(); await taskClient.TaskQueue.Enqueue(() => Throw()); await taskClient.TaskQueue.Enqueue(() => TaskQueueTestFixture.WriteSemaphore(semaphoreFile)); var task = Task.Run(async() => await taskClient.Listen()); await Task.Delay(waitTime); taskClient.CancelListen(); await task; TaskQueueTestFixture.EnsureSemaphore(semaphoreFile); }
public void ItContinuesListeningWhenATaskThrowsAnException() { var waitTime = 5000; var taskClient = new TaskClient( TaskQueue.Redis(TaskQueueTestFixture.RedisConnectionString, nameof(ItContinuesListeningWhenATaskThrowsAnException)), restoreScheduleFromBackup: false); var semaphoreFile = Path.GetTempFileName(); taskClient.TaskQueue.Enqueue(() => Throw()); taskClient.TaskQueue.Enqueue(() => TaskQueueTestFixture.WriteSempaphore(semaphoreFile)); var task = Task.Run(() => taskClient.Listen()); Thread.Sleep(waitTime); taskClient.CancelListen(); task.Wait(); TaskQueueTestFixture.EnsureSemaphore(semaphoreFile); }