Example #1
0
        public void WhenFalse_Always_SetsToGiven(string whenFalse)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule();

            uut.WhenFalse = whenFalse;

            uut.WhenFalse.ShouldBe(whenFalse);
        }
Example #2
0
        public void Validate_ValueIsNotValid_ReturnsIsValidFalse(object value, string whenTrue, string whenFalse)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule()
            {
                WhenTrue  = whenTrue,
                WhenFalse = whenFalse
            };

            uut.Validate(value, null).IsValid.ShouldBeFalse();
        }
Example #3
0
        public void ConvertBack_ValidStringToBoolean_ReturnsExpected(object value, bool expectedResult, string whenTrue, string whenFalse)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule()
            {
                WhenTrue  = whenTrue,
                WhenFalse = whenFalse
            };

            var targetType = typeof(bool);
            var parameter  = (object)null;
            var culture    = (CultureInfo)null;

            uut.ConvertBack(value, targetType, parameter, culture).ShouldBe(expectedResult);
        }
Example #4
0
        public void Validate_ValueIsNotValid_ReturnsErrorContentAsExpected(object value, string whenTrue, string whenFalse)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule()
            {
                WhenTrue  = whenTrue,
                WhenFalse = whenFalse
            };

            var result = uut.Validate(value, null).ErrorContent;

            result.ShouldSatisfyAllConditions(
                () => result.ShouldBeOfType <string>(),
                () => (result as string)?.ShouldContain(whenTrue),
                () => (result as string)?.ShouldContain(whenFalse));
        }
Example #5
0
        public void ConvertBack_ConversionIsInvalid_ThrowsException(object value, Type targetType)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule();

            var parameter = (object)null;
            var culture   = (CultureInfo)null;

            var result = Should.Throw <NotSupportedException>(() =>
            {
                uut.ConvertBack(value, targetType, parameter, culture);
            });

            result.ShouldSatisfyAllConditions(
                () => result.Message.ShouldContain(value?.GetType().Name ?? "null"),
                () => result.Message.ShouldContain(targetType.Name));
        }
Example #6
0
        public void ConvertBack_TargetTypeIsNull_ThrowsException()
        {
            var uut = new BooleanToStringValueConverterAndValidationRule();

            var value      = false;
            var targetType = (Type)null;
            var parameter  = (object)null;
            var culture    = (CultureInfo)null;

            var result = Should.Throw <ArgumentNullException>(() =>
            {
                uut.ConvertBack(value, targetType, parameter, culture);
            });

            result.ParamName.ShouldBe(nameof(targetType));
        }
Example #7
0
        public void ConvertBack_InvalidStringToBoolean_ThrowsException(object value, string whenTrue, string whenFalse)
        {
            var uut = new BooleanToStringValueConverterAndValidationRule()
            {
                WhenTrue  = whenTrue,
                WhenFalse = whenFalse
            };

            var targetType = typeof(bool);
            var parameter  = (object)null;
            var culture    = (CultureInfo)null;

            var result = Should.Throw <ArgumentException>(() =>
            {
                uut.ConvertBack(value, targetType, parameter, culture);
            });

            result.ShouldSatisfyAllConditions(
                () => result.ParamName.ShouldBe(nameof(value)),
                () => result.Message.ShouldContain(whenTrue),
                () => result.Message.ShouldContain(whenFalse));
        }