public void Constructor_AllParametersAreSet_ObjectIsInstantiated()
        {
            // Arrange
            var systemInformationSender = new Mock<ISystemInformationSender>();
            var messageQueueProvider = new Mock<IMessageQueueProvider<SystemInformation>>();

            // Act
            var systemInformationMessageQueueFeederFactory = new SystemInformationMessageQueueWorkerFactory(
                systemInformationSender.Object, messageQueueProvider.Object);

            // Assert
            Assert.IsNotNull(systemInformationMessageQueueFeederFactory);
        }
        public void GetMessageQueueWorker_WorkQueueIsNotNull_ErrorQueueIsNotNull_ResultIsNotNull()
        {
            // Arrange
            var systemInformationSender = new Mock<ISystemInformationSender>();

            var workQueue = new Mock<IMessageQueue<SystemInformation>>();
            var errorQueue = new Mock<IMessageQueue<SystemInformation>>();
            var messageQueueProvider = new Mock<IMessageQueueProvider<SystemInformation>>();
            messageQueueProvider.Setup(m => m.WorkQueue).Returns(workQueue.Object);
            messageQueueProvider.Setup(m => m.ErrorQueue).Returns(errorQueue.Object);

            var systemInformationMessageQueueFeederFactory = new SystemInformationMessageQueueWorkerFactory(systemInformationSender.Object, messageQueueProvider.Object);

            // Act
            var result = systemInformationMessageQueueFeederFactory.GetMessageQueueWorker();

            // Assert
            Assert.IsNotNull(result);
        }