Пример #1
0
        private static void RunTest(PropTestDesc test, BeanEventType eventType, EventBean eventBean)
        {
            var propertyName = test.PropertyName;

            Assert.AreEqual(test.IsProperty, eventType.IsProperty(propertyName), "IsProperty mismatch on '" + propertyName + "',");
            Assert.AreEqual(test.Clazz, eventType.GetPropertyType(propertyName), "GetPropertyType mismatch on '" + propertyName + "',");

            var getter = eventType.GetGetter(propertyName);

            if (getter == null)
            {
                Assert.IsFalse(test.HasGetter, "getGetter null on '" + propertyName + "',");
            }
            else
            {
                Assert.IsTrue(test.HasGetter, "getGetter not null on '" + propertyName + "',");
                if (ReferenceEquals(test.GetterReturnValue, typeof(NullReferenceException)))
                {
                    try
                    {
                        getter.Get(eventBean);
                        Assert.Fail("getGetter not throwing null pointer on '" + propertyName);
                    }
                    catch (NullReferenceException)
                    {
                        // expected
                    }
                }
                else
                {
                    var value = getter.Get(eventBean);
                    Assert.AreEqual(test.GetterReturnValue, value, "getter value mismatch on '" + propertyName + "',");
                }
            }
        }
Пример #2
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="type">the type of read</param>
        public BeanEventBeanReader(BeanEventType type)
        {
            var properties = type.PropertyNames;
            var getters    = new List <BeanEventPropertyGetter>();

            foreach (String property in properties)
            {
                var getter = (BeanEventPropertyGetter)type.GetGetter(property);
                if (getter != null)
                {
                    getters.Add(getter);
                }
            }
            _getterArray = getters.ToArray();
        }