Implementation of a specific device type that extends the BaseDevice functionality
Inheritance: Microsoft.Azure.Devices.Applications.RemoteMonitoring.Simulator.WebJob.SimulatorCore.Devices.DeviceBase
 public CoolerDeviceTests()
 {
     _fixture = new Fixture();
     _initConfig = _fixture.Create<InitialDeviceConfig>();
     var loggerMock = new Mock<ILogger>();
     _transportMock = new Mock<ITransport>();
     var transportFactoryMock = new Mock<ITransportFactory>();
     transportFactoryMock.Setup(x => x.CreateTransport(It.IsNotNull<IDevice>())).Returns(_transportMock.Object);
     var telemetryFactoryMock = new Mock<ITelemetryFactory>();
     var configurationProviderMock = new Mock<IConfigurationProvider>();
     var coolerDeviceFactory = new CoolerDeviceFactory();
     _coolerDevice = coolerDeviceFactory.CreateDevice(loggerMock.Object, transportFactoryMock.Object,
         telemetryFactoryMock.Object, configurationProviderMock.Object, _initConfig) as CoolerDevice;
     loggerMock.Setup(x => x.LogInfo(It.IsAny<string>(), It.IsAny<object[]>()));
 }
        public ChangeSetPointTempCommandProcessor(CoolerDevice device)
            : base(device)
        {

        }
        public StartCommandProcessor(CoolerDevice device)
            : base(device)
        {

        }
        public DiagnosticTelemetryCommandProcessor(CoolerDevice device)
            : base(device)
        {

        }
        public ChangeDeviceStateCommandProcessor(CoolerDevice device)
            : base(device)
        {

        }