public void When_FormatSpecialDouble(double value, string expected)
        {
            var sut    = new PermilleFormatter();
            var actual = sut.FormatDouble(value);

            Assert.AreEqual(expected, actual);
        }
        public void When_FormatDouble(double value, int integerDigits, int fractionDigits, string expected)
        {
            var sut = new PermilleFormatter();

            sut.IntegerDigits  = integerDigits;
            sut.FractionDigits = fractionDigits;

            var formatted = sut.FormatDouble(value);

            Assert.AreEqual(expected, formatted);
        }
        public void When_FormatDoubleUsingSignificantDigitsNumberRounder()
        {
            var sut = new PermilleFormatter();
            SignificantDigitsNumberRounder rounder = new SignificantDigitsNumberRounder();

            rounder.SignificantDigits = 1;
            sut.NumberRounder         = rounder;
            var formatted = sut.FormatDouble(1.8);

            Assert.AreEqual("2000.00‰", formatted);
        }
        public void When_FormatDoubleUsingIncrementNumberRounder()
        {
            var sut = new PermilleFormatter();
            IncrementNumberRounder rounder = new IncrementNumberRounder();

            rounder.Increment = 0.5;
            sut.NumberRounder = rounder;
            var formatted = sut.FormatDouble(1.8);

            Assert.AreEqual("2000.00‰", formatted);
        }
        public void When_FormatDoubleZeroWithIsZeroSignedSetTrue(int integerDigits, int fractionDigits, string expected)
        {
            var sut = new PermilleFormatter();

            sut.IntegerDigits  = integerDigits;
            sut.FractionDigits = fractionDigits;
            sut.IsZeroSigned   = true;

            var formatted = sut.FormatDouble(0d);

            Assert.AreEqual(expected, formatted);
        }
        public void When_FormatDoubleWithIsDecimalPointerAlwaysDisplayedSetTrue(double value, string expected)
        {
            var sut = new PermilleFormatter();

            sut.IsDecimalPointAlwaysDisplayed = true;
            sut.FractionDigits = 0;
            sut.IntegerDigits  = 0;

            var formatted = sut.FormatDouble(value);

            Assert.AreEqual(expected, formatted);
        }