public void Should_Throw_If_LimitRateUnit_Value_Is_Invalid()
        {
            int limitRateUnit     = Enum.GetValues(typeof(LimitRateUnitEnum)).Cast <int>().Max() + 1;
            var argument          = new WgetLimitRateArgument(100, (LimitRateUnitEnum)limitRateUnit);
            var limitRateArgument = Record.Exception(() => argument.GetFormattedLimitRateValue());

            Assert.IsType <NotImplementedException>(limitRateArgument);
        }
        public void Should_Format_LimitRateUnit_With_RateUnit(
            double limitRate,
            LimitRateUnitEnum limitRateUnit,
            string expectedValue)
        {
            var argument = new WgetLimitRateArgument(limitRate, limitRateUnit);

            Assert.Equal(expectedValue, argument.GetFormattedLimitRateValue());
        }
        public void Should_Set_LimitRate_As_Argument(double limitRate, LimitRateUnitEnum limitRateUnit)
        {
            var rate = new WgetLimitRateArgument(limitRate, limitRateUnit);

            _fixture.Settings.LimitRate = rate;
            var result             = _fixture.Run();
            var expectedSwitchName = _fixture.Settings.GetArgumentName(nameof(WgetSettings.LimitRate));

            Assert.Contains($"{expectedSwitchName}{WgetSettings.SwitchSeparator}{rate.GetFormattedLimitRateValue()}", result.Args);
        }