static EventMapCore() { map = new Dictionary<string, object>(); map.Put("MyInt", 3); map.Put("MyString", "some string"); map.Put("beanA", SupportBeanComplexProps.MakeDefaultBean()); }
public void Run(RegressionEnvironment env) { SetupOrPattern( env, "a, a as myAEvent, b, b as myBEvent, a.IntPrimitive as myInt, " + "a.TheString, b.SimpleProperty as simple, b.Indexed[0] as indexed, b.Nested.NestedValue as nestedVal"); object theEvent = SupportBeanComplexProps.MakeDefaultBean(); env.SendEventBean(theEvent); var eventBean = env.Listener("s0").AssertOneGetNewAndReset(); Assert.AreSame(theEvent, eventBean.Get("b")); Assert.AreEqual("Simple", eventBean.Get("simple")); Assert.AreEqual(1, eventBean.Get("indexed")); Assert.AreEqual("NestedValue", eventBean.Get("nestedVal")); Assert.IsNull(eventBean.Get("a")); Assert.IsNull(eventBean.Get("myAEvent")); Assert.IsNull(eventBean.Get("myInt")); Assert.IsNull(eventBean.Get("a.TheString")); var eventTwo = new SupportBean(); eventTwo.IntPrimitive = 2; eventTwo.TheString = "test2"; env.SendEventBean(eventTwo); eventBean = env.Listener("s0").AssertOneGetNewAndReset(); Assert.AreEqual(2, eventBean.Get("myInt")); Assert.AreEqual("test2", eventBean.Get("a.TheString")); Assert.IsNull(eventBean.Get("b")); Assert.IsNull(eventBean.Get("myBEvent")); Assert.IsNull(eventBean.Get("simple")); Assert.IsNull(eventBean.Get("indexed")); Assert.IsNull(eventBean.Get("nestedVal")); env.UndeployAll(); }
public void Run(RegressionEnvironment env) { // test map containing first-level property that is an array of primitive or Class env.CompileDeploy("@Name('s0') select P0('k1') as a from MyMappedPropertyMap"); env.AddListener("s0"); IDictionary<string, object> eventVal = new Dictionary<string, object>(); eventVal.Put("k1", "v1"); var theEvent = MakeMap( new[] { new object[] {"P0", eventVal} }); env.SendEventMap(theEvent, "MyMappedPropertyMap"); EPAssertionUtil.AssertProps( env.Listener("s0").AssertOneGetNewAndReset(), new [] { "a" }, new object[] {"v1"}); Assert.AreEqual(typeof(object), env.Statement("s0").EventType.GetPropertyType("a")); env.UndeployAll(); // test map at the second level of a nested map that is an array of primitive or Class env.CompileDeploy("@Name('s0') select outer.P0('k1') as a from MyMappedPropertyMapOuter"); env.AddListener("s0"); var eventOuter = MakeMap( new[] { new object[] {"outer", theEvent} }); env.SendEventMap(eventOuter, "MyMappedPropertyMapOuter"); EPAssertionUtil.AssertProps( env.Listener("s0").AssertOneGetNewAndReset(), new[] {"a"}, new object[] {"v1"} ); Assert.AreEqual(typeof(object), env.Statement("s0").EventType.GetPropertyType("a")); env.UndeployModuleContaining("s0"); // test map that contains a bean which has a map property env.CompileDeploy( "@Name('s0') select outerTwo.MapProperty('xOne') as a from MyMappedPropertyMapOuterTwo") .AddListener("s0"); var eventOuterTwo = MakeMap( new[] { new object[] {"outerTwo", SupportBeanComplexProps.MakeDefaultBean()} }); env.SendEventMap(eventOuterTwo, "MyMappedPropertyMapOuterTwo"); EPAssertionUtil.AssertProps( env.Listener("s0").AssertOneGetNewAndReset(), new [] { "a" }, new object[] {"yOne"}); Assert.AreEqual(typeof(object), env.Statement("s0").EventType.GetPropertyType("a")); env.UndeployAll(); }
private void RunAssertionBean( RegressionEnvironment env, RegressionPath path, string epl) { env.CompileDeploy("@Name('s0') " + epl, path).AddListener("s0"); env.SendEventBean(SupportBeanComplexProps.MakeDefaultBean()); env.SendEventBean(new SupportBean("keyOne", 1)); EPAssertionUtil.AssertProps( env.Listener("s0").AssertOneGetNewAndReset(), new [] { "val0", "val1" }, new object[] {"valueOne", 2}); env.UndeployModuleContaining("s0"); }
public void Run(RegressionEnvironment env) { SetupOrPattern(env, "*"); object theEvent = new SupportBean(); env.SendEventBean(theEvent); var eventBean = env.Listener("s0").AssertOneGetNewAndReset(); Assert.AreSame(theEvent, eventBean.Get("a")); Assert.IsNull(eventBean.Get("b")); theEvent = SupportBeanComplexProps.MakeDefaultBean(); env.SendEventBean(theEvent); eventBean = env.Listener("s0").AssertOneGetNewAndReset(); Assert.AreSame(theEvent, eventBean.Get("b")); Assert.IsNull(eventBean.Get("a")); env.UndeployAll(); }
public void Run(RegressionEnvironment env) { var fields = "c0".SplitCsv(); var builder = new SupportEvalBuilder("SupportBeanComplexProps") .WithExpressions(fields, "{ArrayProperty, Nested}"); var bean = SupportBeanComplexProps.MakeDefaultBean(); builder.WithAssertion(bean) .Verify( "c0", result => { var arr = (object[])result; Assert.AreSame(bean.ArrayProperty, arr[0]); Assert.AreSame(bean.Nested, arr[1]); }); builder.Run(env); env.UndeployAll(); }
public void Run(RegressionEnvironment env) { var stmtText = "@Name('s0') select * from pattern [every(a=SupportBean or b=SupportBeanComplexProps)]"; var compiled = env.Compile(stmtText); env.Deploy(compiled).AddListener("s0"); for (var i = 0; i < 100; i++) { SendAndAssert(env); var listener = env.Listener("s0"); listener.Reset(); env.UndeployModuleContaining("s0"); env.SendEventBean(new SupportBean()); env.SendEventBean(SupportBeanComplexProps.MakeDefaultBean()); Assert.IsFalse(listener.IsInvoked); env.Deploy(compiled).AddListener("s0"); } env.UndeployAll(); }
private static void SendAndAssert(RegressionEnvironment env) { for (var i = 0; i < 1000; i++) { object theEvent = null; if (i % 3 == 0) { theEvent = new SupportBean(); } else { theEvent = SupportBeanComplexProps.MakeDefaultBean(); } env.SendEventBean(theEvent); var eventBean = env.Listener("s0").AssertOneGetNewAndReset(); if (theEvent is SupportBean) { Assert.AreSame(theEvent, eventBean.Get("a")); Assert.IsNull(eventBean.Get("b")); } else { Assert.AreSame(theEvent, eventBean.Get("b")); Assert.IsNull(eventBean.Get("a")); } } }