예제 #1
0
        public void SetUp()
        {
            _rootCartNodeOneReq = new RootCartProdAssemblyNode(1, 5, false, new int[] { 0, 0, 0, 1, 2 });

            _parentNode = new SupportJoinProcNode(-1, 5);
            _parentNode.AddChild(_rootCartNodeOneReq);

            // add child nodes to indicate what sub-streams to build the cartesian product from
            _rootCartNodeOneReq.AddChild(new SupportJoinProcNode(2, 5));
            _rootCartNodeOneReq.AddChild(new SupportJoinProcNode(3, 5));
            _rootCartNodeOneReq.AddChild(new SupportJoinProcNode(4, 5));
        }
예제 #2
0
        public void TestFlowOptional()
        {
            RootCartProdAssemblyNode rootCartNodeAllOpt = (RootCartProdAssemblyNode) new RootCartProdAssemblyNodeFactory(1, 5, true).MakeAssemblerUnassociated();

            rootCartNodeAllOpt.AddChild(new SupportJoinProcNode(2, 5));
            rootCartNodeAllOpt.AddChild(new SupportJoinProcNode(3, 5));
            rootCartNodeAllOpt.AddChild(new SupportJoinProcNode(4, 5));

            _parentNode.AddChild(rootCartNodeAllOpt);

            rootCartNodeAllOpt.Init(null);
            List <EventBean[]> resultFinalRows = new List <EventBean[]>();

            rootCartNodeAllOpt.Process(null, resultFinalRows, null);

            // 5 generated rows: 2 (stream 2) + 2 (stream 3) + 1 (self, Node 2)
            Assert.AreEqual(1, _parentNode.RowsList.Count);

            EventBean[][] rowArr = SupportJoinResultNodeFactory.ConvertTo2DimArr(_parentNode.RowsList);
            EPAssertionUtil.AssertEqualsAnyOrder(
                new[] { new EventBean[] { null, null, null, null, null } }, rowArr);
        }