public void ExecuteFuncTest()
        {
            // Arrange
            var config = new CodeConfiguration();

            // Act
            var result = config.Execute(() => true);

            // Assert
            Assert.True(result);
        }
        public void ExecuteFuncTest()
        {
            // Arrange
            var config = new CodeConfiguration();

            // Act
            var result = config.Execute(() => true);

            // Assert
            Assert.True(result);
        }
        public void ExecuteActionTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num = 0;

            // Act
            config.Execute(() => { num++; });

            // Assert
            Assert.AreEqual(1, num);
        }
        public void ExecuteActionTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num    = 0;

            // Act
            config.Execute(() => { num++; });

            // Assert
            Assert.AreEqual(1, num);
        }
        public void ExecuteActionRetryTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num = 0;
            // Act
            config.Execute(() =>
            {
                num++;
                throw new Exception();
            }, e =>
            {
                num++;
            });

            // Assert
            Assert.AreEqual(4, num);
        }
        public void ExecuteFuncRetryTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num = 0;
            // Act
            var actual = config.Execute(() =>
            {
                num++;
                throw new Exception();
            }, e =>
            {
                num++;
                return num;
            });

            // Assert
            Assert.AreEqual(4, actual);
        }
        public void ExecuteFuncRetryTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num    = 0;
            // Act
            var actual = config.Execute(() =>
            {
                num++;
                throw new Exception();
            }, e =>
            {
                num++;
                return(num);
            });

            // Assert
            Assert.AreEqual(4, actual);
        }
        public void ExecuteActionRetryTest()
        {
            // Arrange
            var config = new CodeConfiguration();
            var num    = 0;

            // Act
            config.Execute(() =>
            {
                num++;
                throw new Exception();
            }, e =>
            {
                num++;
            });

            // Assert
            Assert.AreEqual(4, num);
        }