public void Constructor_AllParametersAreSet_ObjectIsInstantiated()
        {
            // Arrange
            var agentControlDefinitionProvider = new Mock<IAgentControlDefinitionProvider>();

            // Act
            var systemInformationSenderConfigurationProvider = new RESTBasedSystemInformationSenderConfigurationProvider(agentControlDefinitionProvider.Object);

            // Assert
            Assert.IsNotNull(systemInformationSenderConfigurationProvider);
        }
        public void GetConfiguration_AgentControlDefinitionProviderReturnsNull_ResultIsNull()
        {
            // Arrange
            var agentControlDefinitionProvider = new Mock<IAgentControlDefinitionProvider>();
            var systemInformationSenderConfigurationProvider = new RESTBasedSystemInformationSenderConfigurationProvider(agentControlDefinitionProvider.Object);

            // Act
            var result = systemInformationSenderConfigurationProvider.GetConfiguration();

            // Assert
            Assert.IsNull(result);
        }
        public void GetConfiguration_AgentControlDefinitionProviderReturnsAgentConfiguration_ResultIsNotNull()
        {
            // Arrange
            var agentControlDefinition = new AgentControlDefinition
                {
                    AgentIsEnabled = true,
                    Hostaddress = "127.0.0.1",
                    Hostname = "www.example.com",
                    CheckIntervalInSeconds = 30,
                    SystemInformationSenderPath = "/api/systeminformation"
                };

            var agentControlDefinitionProvider = new Mock<IAgentControlDefinitionProvider>();
            agentControlDefinitionProvider.Setup(a => a.GetControlDefinition()).Returns(agentControlDefinition);

            var systemInformationSenderConfigurationProvider = new RESTBasedSystemInformationSenderConfigurationProvider(agentControlDefinitionProvider.Object);

            // Act
            var result = systemInformationSenderConfigurationProvider.GetConfiguration();

            // Assert
            Assert.IsNotNull(result);
        }