Ejemplo n.º 1
0
			public void Run(RegressionEnvironment env)
			{
				var fields = "c0".SplitCsv();
				var builder = new SupportEvalBuilder("SupportCollection");
				builder.WithExpression(fields[0], "Boolvals.where(x => x)");

				builder.WithStatementConsumer(stmt => AssertTypesAllSame(stmt.EventType, fields, typeof(ICollection<object>)));

				builder.WithAssertion(SupportCollection.MakeBoolean("true,true,false"))
					.Verify("c0", val => AssertValuesArrayScalar(val, true, true));

				builder.Run(env);
			}
Ejemplo n.º 2
0
        private void RunAssertionWhereString(EPServiceProvider epService)
        {
            string[] fields      = "val0,val1".Split(',');
            string   eplFragment = "select " +
                                   "Strvals.where(x => x not like '%1%') as val0, " +
                                   "Strvals.where((x, i) => x not like '%1%' and i > 1) as val1 " +
                                   "from SupportCollection";
            EPStatement stmtFragment = epService.EPAdministrator.CreateEPL(eplFragment);
            var         listener     = new SupportUpdateListener();

            stmtFragment.Events += listener.Update;
            LambdaAssertionUtil.AssertTypes(stmtFragment.EventType, fields, new Type[] {
                typeof(ICollection <string>), typeof(ICollection <string>)
            });

            epService.EPRuntime.SendEvent(SupportCollection.MakeString("E1,E2,E3"));
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val0", "E2", "E3");
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val1", "E3");
            listener.Reset();

            epService.EPRuntime.SendEvent(SupportCollection.MakeString("E4,E2,E1"));
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val0", "E4", "E2");
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val1", new string[0]);
            listener.Reset();

            epService.EPRuntime.SendEvent(SupportCollection.MakeString(""));
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val0", new string[0]);
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val1", new string[0]);
            listener.Reset();

            stmtFragment.Dispose();

            // test boolean
            eplFragment = "select " +
                          "Boolvals.where(x => x) as val0 " +
                          "from SupportCollection";
            stmtFragment         = epService.EPAdministrator.CreateEPL(eplFragment);
            stmtFragment.Events += listener.Update;
            LambdaAssertionUtil.AssertTypes(stmtFragment.EventType, "val0".Split(','), new Type[] {
                typeof(ICollection <bool?>)
            });

            epService.EPRuntime.SendEvent(SupportCollection.MakeBoolean("true,true,false"));
            LambdaAssertionUtil.AssertValuesArrayScalar(listener, "val0", true, true);
            listener.Reset();

            stmtFragment.Dispose();
        }
Ejemplo n.º 3
0
        public void TestWhereString()
        {
            String[] fields      = "val0,val1".Split(',');
            String   eplFragment = "select " +
                                   "Strvals.Where(x => x not like '%1%') as val0, " +
                                   "Strvals.Where((x, i) => x not like '%1%' and i > 1) as val1 " +
                                   "from SupportCollection";
            EPStatement stmtFragment = _epService.EPAdministrator.CreateEPL(eplFragment);

            stmtFragment.Events += _listener.Update;
            LambdaAssertionUtil.AssertTypes(stmtFragment.EventType, fields, new Type[] { typeof(ICollection <object>), typeof(ICollection <object>) });

            _epService.EPRuntime.SendEvent(SupportCollection.MakeString("E1,E2,E3"));
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val0", "E2", "E3");
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val1", "E3");
            _listener.Reset();

            _epService.EPRuntime.SendEvent(SupportCollection.MakeString("E4,E2,E1"));
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val0", "E4", "E2");
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val1", new String[0]);
            _listener.Reset();

            _epService.EPRuntime.SendEvent(SupportCollection.MakeString(""));
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val0", new String[0]);
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val1", new String[0]);
            _listener.Reset();

            stmtFragment.Dispose();

            // test boolean
            eplFragment = "select " +
                          "Boolvals.Where(x => x) as val0 " +
                          "from SupportCollection";
            stmtFragment         = _epService.EPAdministrator.CreateEPL(eplFragment);
            stmtFragment.Events += _listener.Update;
            LambdaAssertionUtil.AssertTypes(stmtFragment.EventType, "val0".Split(','), new Type[] { typeof(ICollection <object>) });

            _epService.EPRuntime.SendEvent(SupportCollection.MakeBoolean("true,true,false"));
            LambdaAssertionUtil.AssertValuesArrayScalar(_listener, "val0", true, true);
            _listener.Reset();
        }