Skip to content

Commit 21b8486

Browse files
committed
Mock the Quartz scheduler in tests
1 parent eba75d2 commit 21b8486

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

IntegrationEngine.Tests/Scheduler/EngineSchedulerTest.cs

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,16 @@
44
using Quartz.Impl;
55
using System;
66
using System.Collections.Generic;
7+
using Moq;
8+
using Quartz;
79

810
namespace IntegrationEngine.Tests.Scheduler
911
{
1012
public class EngineSchedulerTest : TestBase<EngineScheduler>
1113
{
1214
public CronTrigger CronTrigger { get; set; }
15+
public Mock<IScheduler> MockScheduler { get; set; }
16+
1317
[SetUp]
1418
public void SetUp()
1519
{
@@ -19,23 +23,36 @@ public void SetUp()
1923
CronExpressionString = "* * * * * ?",
2024
};
2125
Subject.IntegrationJobTypes = new List<Type>() { IntegrationJobStub.Type };
22-
Subject.Scheduler = StdSchedulerFactory.GetDefaultScheduler();
26+
MockScheduler = new Mock<IScheduler>();
27+
Subject.Scheduler = MockScheduler.Object;
2328
}
2429

2530
[Test]
2631
public void ShouldScheduleCronTriggerWithoutAnExceptionThrown()
2732
{
33+
MockScheduler.Setup(x => x.ScheduleJob(It.IsAny<IJobDetail>(), It.IsAny<ITrigger>()));
34+
2835
Subject.ScheduleJobWithTrigger(CronTrigger);
36+
37+
MockScheduler.Verify(
38+
x => x.ScheduleJob(It.IsAny<IJobDetail>(), It.IsAny<ITrigger>()),
39+
Times.Once);
2940
}
3041

3142
[Test]
3243
public void ShouldDeleteTrigger()
3344
{
34-
Subject.ScheduleJobWithTrigger(CronTrigger);
45+
var expectedGroup = "IntegrationEngine.Tests.IntegrationJobStub";
46+
var expectedName = "one";
47+
MockScheduler.Setup(x => x.UnscheduleJob(It.Is<TriggerKey>(y => y.Group == expectedGroup && y.Name == expectedName)))
48+
.Returns(true);
3549

3650
var result = Subject.DeleteTrigger(CronTrigger);
3751

3852
Assert.That(result, Is.True);
53+
MockScheduler.Verify(
54+
x => x.UnscheduleJob(It.Is<TriggerKey>(y => y.Group == expectedGroup && y.Name == expectedName)),
55+
Times.Once);
3956
}
4057

4158
[Test]

0 commit comments

Comments
 (0)