Exemple #1
0
        public void GetThresholdPercentage_UsesDefaultValueIfNoSpecificValueConfigured()
        {
            // Arrange

            var groupKey            = AnyGroupKey;
            var expectedConfigValue = AnyPositiveInt;

            var mockConfig = new MjolnirConfiguration
            {
                DefaultBreakerConfiguration = new BreakerConfiguration
                {
                    ThresholdPercentage = expectedConfigValue
                }
            };

            var config = new FailurePercentageCircuitBreakerConfig(mockConfig);

            // Act

            var value = config.GetThresholdPercentage(groupKey);

            // Assert

            Assert.Equal(expectedConfigValue, value);
        }
Exemple #2
0
        public void GetThresholdPercentage_UsesDefaultValueIfNoSpecificValueOrDefaultValueConfigured_DefaultIs50()
        {
            // Arrange

            const int expectedDefaultThresholdPercentage = 50;

            var groupKey = AnyGroupKey;

            var mockConfig = new MjolnirConfiguration
            {
                DefaultBreakerConfiguration = new BreakerConfiguration
                {
                    ThresholdPercentage = expectedDefaultThresholdPercentage
                }
            };

            var config = new FailurePercentageCircuitBreakerConfig(mockConfig);

            // Act

            var value = config.GetThresholdPercentage(groupKey);

            // Assert

            Assert.Equal(expectedDefaultThresholdPercentage, value);
        }
Exemple #3
0
        public void GetThresholdPercentage_UsesSpecificValueIfConfigured()
        {
            // Arrange

            var groupKey            = AnyGroupKey;
            var expectedConfigValue = AnyPositiveInt;

            var mockConfig = new MjolnirConfiguration
            {
                BreakerConfigurations = new Dictionary <string, BreakerConfiguration>
                {
                    {
                        groupKey.Name,
                        new BreakerConfiguration
                        {
                            ThresholdPercentage = expectedConfigValue
                        }
                    }
                }
            };

            var config = new FailurePercentageCircuitBreakerConfig(mockConfig);

            // Act

            var value = config.GetThresholdPercentage(groupKey);

            // Assert

            Assert.Equal(expectedConfigValue, value);
        }