private void RunAssertionBeanType(EPServiceProvider epService) { epService.EPAdministrator.Configuration.AddImport<SupportBean>(); epService.EPAdministrator.CreateEPL("create schema SupportBean SupportBean"); epService.EPAdministrator.CreateEPL( "create dataflow MyDataFlowOne " + "DefaultSupportSourceOp -> outstream<SupportBean> {}" + "MySupportBeanOutputOp(outstream) {}" + "SupportGenericOutputOpWPort(outstream) {}"); var source = new DefaultSupportSourceOp(new object[] {new SupportBean("E1", 1)}); var outputOne = new MySupportBeanOutputOp(); var outputTwo = new SupportGenericOutputOpWPort(); var options = new EPDataFlowInstantiationOptions().OperatorProvider( new DefaultSupportGraphOpProvider(source, outputOne, outputTwo)); var dfOne = epService.EPRuntime.DataFlowRuntime.Instantiate("MyDataFlowOne", options); dfOne.Run(); EPAssertionUtil.AssertPropsPerRow( epService.Container, outputOne.GetAndReset().ToArray(), "TheString,IntPrimitive".Split(','), new[] {new object[] {"E1", 1}}); var received = outputTwo.GetAndReset(); EPAssertionUtil.AssertPropsPerRow( epService.Container, received.First.ToArray(), "TheString,IntPrimitive".Split(','), new[] {new object[] {"E1", 1}}); EPAssertionUtil.AssertEqualsExactOrder(new[] {0}, received.Second.ToArray()); epService.EPAdministrator.DestroyAllStatements(); }
public void Run(RegressionEnvironment env) { env.CompileDeploy( "@Name('flow') create dataflow MyDataFlowOne " + "DefaultSupportSourceOp -> outstream<SupportBean> {}" + "MySupportBeanOutputOp(outstream) {}" + "SupportGenericOutputOpWPort(outstream) {}"); var source = new DefaultSupportSourceOp(new object[] {new SupportBean("E1", 1)}); var outputOne = new MySupportBeanOutputOp(); var outputTwo = new SupportGenericOutputOpWPort(); var options = new EPDataFlowInstantiationOptions() .WithOperatorProvider(new DefaultSupportGraphOpProvider(source, outputOne, outputTwo)); var dfOne = env.Runtime.DataFlowService.Instantiate(env.DeploymentId("flow"), "MyDataFlowOne", options); dfOne.Run(); SupportBean.Compare( outputOne.GetAndReset().ToArray(), new [] { "TheString","IntPrimitive" }, new[] { new object[] {"E1", 1} }); var received = outputTwo.GetAndReset(); SupportBean.Compare( received.First.ToArray(), new [] { "TheString","IntPrimitive" }, new[] { new object[] {"E1", 1} }); EPAssertionUtil.AssertEqualsExactOrder(new int?[] {0}, received.Second.ToArray()); env.UndeployAll(); }