public void SetUp() { eventTypeSimple = supportEventTypeFactory.CreateBeanType(typeof(SupportBeanSimple)); eventTypeComplex = supportEventTypeFactory.CreateBeanType(typeof(SupportBeanComplexProps)); eventTypeNested = supportEventTypeFactory.CreateBeanType(typeof(SupportBeanCombinedProps)); objSimple = new SupportBeanSimple("a", 20); objComplex = SupportBeanComplexProps.MakeDefaultBean(); objCombined = SupportBeanCombinedProps.MakeDefaultBean(); eventSimple = new BeanEventBean(objSimple, eventTypeSimple); eventComplex = new BeanEventBean(objComplex, eventTypeComplex); eventNested = new BeanEventBean(objCombined, eventTypeNested); }
public void TestGet() { EventType eventType = supportEventTypeFactory.CreateBeanType(typeof(SupportBean)); var eventBean = new BeanEventBean(testEvent, eventType); Assert.AreEqual(eventType, eventBean.EventType); Assert.AreEqual(testEvent, eventBean.Underlying); Assert.AreEqual(10, eventBean.Get("IntPrimitive")); // Test wrong property name Assert.Throws<PropertyAccessException>(() => { eventBean.Get("dummy"); Assert.IsTrue(false); }); // Test wrong event type - not possible to happen under normal use Assert.Throws<PropertyAccessException>(() => { eventType = supportEventTypeFactory.CreateBeanType(typeof(SupportBeanSimple)); eventBean = new BeanEventBean(testEvent, eventType); eventBean.Get("MyString"); Assert.IsTrue(false); }); }