示例#1
0
        public void NullableValueTypesAreNotSupportedInConvertBackBinding()
        {
            var converter = new CalcConverter();

            // instead of NULL there must be //5// but nullable values doesn't support so binding retrieve NULL instead of //5//
            Assert.AreEqual(null, converter.ConvertBack((object)10.0, typeof(double?), "{0}+5", CultureInfo.CurrentCulture));
        }
示例#2
0
        public void BindingCompileTimesShouldBeOneTest()
        {
            var interpreterMock = new CompileTimesMockInterpreterParser();
            var converter       = new CalcConverter(interpreterMock);

            converter.Convert("15", typeof(string), "{0}+\"5\"", CultureInfo.CurrentCulture);

            Assert.AreEqual(1, interpreterMock.ParseCalls.Count);
            Assert.AreEqual(1, interpreterMock.ParseCalls.First().Value);
        }
示例#3
0
        public void BindingBackCompileTimesShouldBeTwoTest()
        {
            var interpreterMock = new CompileTimesMockInterpreterParser();
            var converter       = new CalcConverter(interpreterMock);

            converter.ConvertBack("15", typeof(int), "{0}+5", CultureInfo.CurrentCulture);

            Assert.AreEqual(2, interpreterMock.ParseCalls.Count);
            Assert.AreEqual(1, interpreterMock.ParseCalls.First().Value);
            Assert.AreEqual(1, interpreterMock.ParseCalls.Skip(1).First().Value);
        }
示例#4
0
        public void ConvertFromStringTest()
        {
            var converter = new CalcConverter();

            Assert.AreEqual(10, converter.ConvertBack("15", typeof(int), "{0}+5", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(10.299999999999999, converter.ConvertBack("15.7", typeof(double), "{0}+5.4", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(false, converter.ConvertBack("True", typeof(bool), "!{0}", CultureInfo.CurrentCulture));
        }
示例#5
0
        public void ConvertFromObjectTest()
        {
            var converter = new CalcConverter();

            Assert.AreEqual(10, converter.ConvertBack((object)15, typeof(int), "{0}+5", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(9.2, converter.ConvertBack((object)15.0, typeof(double), "{0}+5.8", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(true, converter.ConvertBack((object)false, typeof(bool), "!{0}", CultureInfo.CurrentCulture));
        }
示例#6
0
        public void ConvertToStringTest()
        {
            var converter = new CalcConverter();

            Assert.AreEqual("15", converter.Convert(10, typeof(string), "{0}+(double)5", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual("15.3", converter.Convert(10, typeof(string), "{0}+5.3", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual("False", converter.Convert(false, typeof(string), "{0}&&true", CultureInfo.CurrentCulture));
        }
示例#7
0
        public void ConvertToObjectTest()
        {
            var converter = new CalcConverter();

            Assert.AreEqual(15, converter.Convert(10, typeof(object), "{0}+5", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(15.3, converter.Convert(10, typeof(object), "{0}+5.3", CultureInfo.CurrentCulture));

            converter = new CalcConverter();
            Assert.AreEqual(true, converter.Convert(true, typeof(object), "{0}&&true", CultureInfo.CurrentCulture));
        }
示例#8
0
        public void ConvertBoolToVisibilityTest()
        {
            var converter = new CalcConverter();

            Assert.AreEqual(Visibility.Visible,
                            new BoolToVisibilityConverter()
                            .Convert(true, typeof(Visibility), null, CultureInfo.CurrentCulture));

            Assert.AreEqual(Visibility.Collapsed,
                            new BoolToVisibilityConverter()
                            .Convert(false, typeof(Visibility), null, CultureInfo.CurrentCulture));

            Assert.AreEqual(Visibility.Hidden,
                            new BoolToVisibilityConverter(FalseToVisibility.Hidden)
                            .Convert(false, typeof(Visibility), null, CultureInfo.CurrentCulture));
        }