public void should_begin_monitoring_when_started_if_mapping_exists() { var buildMonitor = Substitute.For<IBuildMonitor>(); var buildMonitorFactory = Substitute.For<IBuildMonitorFactory>(); buildMonitorFactory.Create(Arg.Any<IInputDevice>()).Returns(buildMonitor); var buildMonitorFactories = Substitute.For<IIndex<string, IBuildMonitorFactory>>(); buildMonitorFactories["key"].ReturnsForAnyArgs(buildMonitorFactory); var outputDevice = new OutputDeviceBuilder().Build(); var inputDevice = new InputDeviceBuilder().Build(); var mapping = new Mapping { OutputDeviceId = outputDevice.Id }; mapping.InputGroups.Add(new InputGroup { InputDeviceId = inputDevice.Id, Inputs = { "Build1", "Build2" } }); var config = new ConfigBuilder() .WithOutputDevice(outputDevice) .WithInputDevice(inputDevice) .WithMapping(mapping) .Build(); var service = new EmanateService(config, buildMonitorFactories); service.Start(); buildMonitor.Received().BeginMonitoring(); }
public void should_not_begin_monitoring_when_started_if_no_mapping() { var buildMonitor = Substitute.For<IBuildMonitor>(); var buildMonitorFactory = Substitute.For<IBuildMonitorFactory>(); buildMonitorFactory.Create(Arg.Any<IInputDevice>()).Returns(buildMonitor); var buildMonitorFactories = Substitute.For<IIndex<string, IBuildMonitorFactory>>(); buildMonitorFactories["key"].Returns(buildMonitorFactory); var service = new EmanateService(new GlobalConfig(), buildMonitorFactories); service.Start(); buildMonitor.DidNotReceive().BeginMonitoring(); }