|
|
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|
|
|
using Moq;
|
|
|
|
using Moq;
|
|
|
|
using NUnit.Framework;
|
|
|
|
using NUnit.Framework;
|
|
|
|
using NzbDrone.Common.Messaging;
|
|
|
|
using NzbDrone.Common.Messaging;
|
|
|
|
|
|
|
|
using NzbDrone.Common.Messaging.Tracking;
|
|
|
|
using NzbDrone.Test.Common;
|
|
|
|
using NzbDrone.Test.Common;
|
|
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Common.Test.EventingTests
|
|
|
|
namespace NzbDrone.Common.Test.EventingTests
|
|
|
@ -27,6 +28,13 @@ namespace NzbDrone.Common.Test.EventingTests
|
|
|
|
.Setup(c => c.Build(typeof(IExecute<CommandB>)))
|
|
|
|
.Setup(c => c.Build(typeof(IExecute<CommandB>)))
|
|
|
|
.Returns(_executorB.Object);
|
|
|
|
.Returns(_executorB.Object);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ITrackCommands>()
|
|
|
|
|
|
|
|
.Setup(c => c.TrackIfNew(It.IsAny<CommandA>()))
|
|
|
|
|
|
|
|
.Returns(new TrackedCommand(new CommandA(), CommandState.Running));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ITrackCommands>()
|
|
|
|
|
|
|
|
.Setup(c => c.TrackIfNew(It.IsAny<CommandB>()))
|
|
|
|
|
|
|
|
.Returns(new TrackedCommand(new CommandB(), CommandState.Running));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
[Test]
|
|
|
@ -34,6 +42,10 @@ namespace NzbDrone.Common.Test.EventingTests
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var commandA = new CommandA();
|
|
|
|
var commandA = new CommandA();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ITrackCommands>()
|
|
|
|
|
|
|
|
.Setup(c => c.TrackIfNew(commandA))
|
|
|
|
|
|
|
|
.Returns(new TrackedCommand(commandA, CommandState.Running));
|
|
|
|
|
|
|
|
|
|
|
|
Subject.PublishCommand(commandA);
|
|
|
|
Subject.PublishCommand(commandA);
|
|
|
|
|
|
|
|
|
|
|
|
_executorA.Verify(c => c.Execute(commandA), Times.Once());
|
|
|
|
_executorA.Verify(c => c.Execute(commandA), Times.Once());
|
|
|
@ -55,6 +67,9 @@ namespace NzbDrone.Common.Test.EventingTests
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var commandA = new CommandA();
|
|
|
|
var commandA = new CommandA();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ITrackCommands>()
|
|
|
|
|
|
|
|
.Setup(c => c.TrackIfNew(commandA))
|
|
|
|
|
|
|
|
.Returns(new TrackedCommand(commandA, CommandState.Running));
|
|
|
|
|
|
|
|
|
|
|
|
Subject.PublishCommand(commandA);
|
|
|
|
Subject.PublishCommand(commandA);
|
|
|
|
|
|
|
|
|
|
|
|