コード例 #1
0
        public void GroupNameFromItem_Converter_CheckParameters()
        {
            // An invalid name means return null
            var ob = new Rectangle {
                Width = 100
            };
            var converter = new ValueConverter {
                Converter = (value, targetType, parameter, culture) => {
                    Assert.IsInstanceOfType <double> (value, "#1");
                    Assert.AreEqual(100.0, (double)value, "#2");

                    Assert.AreSame(typeof(object), targetType, "#3");

                    Assert.IsInstanceOfType <int> (parameter, "#4");
                    Assert.AreEqual(77, (int)parameter, "#5");

                    Assert.IsNull(culture, "#6");
                    return(50);
                }
            };

            var p = new PropertyGroupDescription("Width", converter);

            p.GroupNameFromItem(ob, 77, null);
        }
コード例 #2
0
        public void PropertyGroupDescription_GroupNameFromItem_ByObject_Null()
        {
            var groupByStringProperty = new PropertyGroupDescription()
            {
                PropertyName = "ObjectProperty", MemberAccess = new DelegateMemberAccess <ValuesItem>((o) => o.ObjectProperty)
            };
            var item = new ValuesItem()
            {
                ObjectProperty = null
            };
            var groupName = groupByStringProperty.GroupNameFromItem(item, 0);

            Assert.AreEqual(null, groupName);
        }
コード例 #3
0
        public void PropertyGroupDescription_GroupNameFromItem_ByBoolean()
        {
            var groupByStringProperty = new PropertyGroupDescription()
            {
                PropertyName = "BooleanProperty", MemberAccess = new DelegateMemberAccess <ValuesItem>((o) => o.BooleanProperty)
            };
            var item = new ValuesItem()
            {
                BooleanProperty = true
            };
            var groupName = groupByStringProperty.GroupNameFromItem(item, 0);

            Assert.AreEqual(true, groupName);
        }
コード例 #4
0
        public void PropertyGroupDescription_GroupNameFromItem_ByDouble()
        {
            var groupByStringProperty = new PropertyGroupDescription()
            {
                PropertyName = "DoubleProperty", MemberAccess = new DelegateMemberAccess <ValuesItem>((o) => o.DoubleProperty)
            };
            var item = new ValuesItem()
            {
                DoubleProperty = 101.5d
            };
            var groupName = groupByStringProperty.GroupNameFromItem(item, 0);

            Assert.AreEqual(101.5d, groupName);
        }
コード例 #5
0
        public void PropertyGroupDescription_GroupNameFromItem_ByString()
        {
            var groupByStringProperty = new PropertyGroupDescription()
            {
                PropertyName = "StringProperty", MemberAccess = new DelegateMemberAccess <ValuesItem>((o) => o.StringProperty)
            };
            var item = new ValuesItem()
            {
                StringProperty = "Hello World!"
            };
            var groupName = groupByStringProperty.GroupNameFromItem(item, 0);

            Assert.AreEqual("Hello World!", groupName);
        }
コード例 #6
0
        public void PropertyGroupDescription_GroupNameFromItem_ShouldNotHandleOrRethrowExceptions()
        {
            var groupByErrorProperty = new PropertyGroupDescription()
            {
                PropertyName = "ErrorPrperty", MemberAccess = new DelegateMemberAccess <ValuesItem>((o) => o.ErrorProperty)
            };
            var item = new ValuesItem();

            try
            {
                var groupName = groupByErrorProperty.GroupNameFromItem(item, 0);
                Assert.Fail("Exception handeld.");
            }
            catch (Exception e)
            {
                Assert.IsInstanceOfType(e, typeof(ErrorPropertyException), "Expected exception type {0}, thrown {1}", typeof(ErrorPropertyException), e.GetType());
            }
        }
コード例 #7
0
        public void GroupNameFromItem_Converter()
        {
            // An invalid name means return null
            var ob = new Rectangle {
                Width = 100
            };
            var converter = new ValueConverter {
                Converter = (value, targetType, parameter, culture) => {
                    return(Convert.ToInt32(value) - 50);
                }
            };

            var p      = new PropertyGroupDescription("Width", converter);
            var result = p.GroupNameFromItem(ob, 0, null);

            Assert.IsInstanceOfType <int> (result, "#1");
            Assert.AreEqual(50, (int)result, "#2");
        }