コード例 #1
0
        public void Update()
        {
            FakeSerializableScheduledTask scheduledTask1 = new FakeSerializableScheduledTask()
            {
                Id       = Guid.NewGuid(),
                Value    = DateTime.Now.Millisecond,
                Schedule = new OneTimeScheduleDefinition(DateTime.UtcNow.AddHours(-1))
            };

            this.Repository.Add(scheduledTask1);

            scheduledTask1.Value = DateTime.Now.Ticks;

            ((OneTimeScheduleDefinition)scheduledTask1.Schedule).ScheduledDateTimeUtc = DateTime.UtcNow;

            this.Repository.Update(scheduledTask1);

            FakeSerializableScheduledTask scheduledTask2 = (FakeSerializableScheduledTask)this.Repository.GetById(scheduledTask1.Id);

            Assert.AreEqual(scheduledTask1.Value, scheduledTask2.Value);

            this.AssertEquals(((OneTimeScheduleDefinition)scheduledTask1.Schedule).ScheduledDateTimeUtc, ((OneTimeScheduleDefinition)scheduledTask2.Schedule).ScheduledDateTimeUtc);

            FakeSerializableScheduledTask scheduledTask3 = (FakeSerializableScheduledTask)this.Repository.GetAll().First(t => t.Id == scheduledTask1.Id);

            Assert.AreEqual(scheduledTask1.Value, scheduledTask3.Value);

            this.AssertEquals(((OneTimeScheduleDefinition)scheduledTask1.Schedule).ScheduledDateTimeUtc, ((OneTimeScheduleDefinition)scheduledTask3.Schedule).ScheduledDateTimeUtc);
        }
コード例 #2
0
        public void NotifyAdd()
        {
            this.Repository.RaiseEvents = true;

            FakeSerializableScheduledTask scheduledTask = new FakeSerializableScheduledTask()
            {
                Id       = Guid.NewGuid(),
                Schedule = new OneTimeScheduleDefinition(DateTime.UtcNow)
            };

            ScheduledTaskEventArgs args = Helpers.WaitForEvent <ScheduledTaskEventArgs>(this.Timeout,
                                                                                        handler => this.Repository.Added += handler,
                                                                                        () => this.Repository.Add(scheduledTask));

            Assert.AreEqual(scheduledTask.Id, args.ScheduledTaskId);
        }
コード例 #3
0
        public void Delete()
        {
            FakeSerializableScheduledTask scheduledTask = new FakeSerializableScheduledTask()
            {
                Id       = Guid.NewGuid(),
                Schedule = new OneTimeScheduleDefinition(DateTime.UtcNow)
            };

            this.Repository.Add(scheduledTask);

            this.Repository.Delete(scheduledTask.Id);

            Assert.IsNull(this.Repository.GetById(scheduledTask.Id));

            Assert.IsFalse(this.Repository.GetAll().Any(t => t.Id == scheduledTask.Id));
        }