public void TestFieldExist() { EventType mySchema = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); Assert.AreEqual(null, PropertyCheckHelper.Exists(mySchema, "LongPrimitive")); Assert.IsTrue(PropertyCheckHelper.Exists(mySchema, "dummy") != null); }
public EventBean MakeEvent() { var theEvent = SupportEventBeanFactory.CreateObject( SupportEventTypeFactory.GetInstance(_container), new SupportBean()); return(theEvent); }
private static IContainer CreateContainer() { var baseDirectory = AppDomain.CurrentDomain.BaseDirectory; var container = ContainerExtensions.CreateDefaultContainer(false); container.Register <IResourceManager>( xx => new DefaultResourceManager( true, Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "etc")), Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "..", "etc")), Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "..", "..", "etc"))), Lifespan.Singleton); SupportEventTypeFactory.RegisterSingleton(container); SupportExprNodeFactory.RegisterSingleton(container); SupportDatabaseService.RegisterSingleton(container); SupportJoinResultNodeFactory.RegisterSingleton(container); container .InitializeDefaultServices() .InitializeDatabaseDrivers() .RegisterDatabaseDriver(typeof(DbDriverPgSQL)); return(container); }
public void SetUp() { var schema = new Dictionary <String, Object>(); schema["STDDEV"] = typeof(double?); _parentEventType = SupportEventTypeFactory.CreateMapType(schema); var addProps = new Dictionary <String, Object>(); addProps["Symbol"] = typeof(string); var mergeEventType = SupportEventAdapterService.Service.CreateAnonymousWrapperType( "test", _parentEventType, addProps); // Set up length window view and a test child view _myView = new AddPropertyValueOptionalView( SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(), new String[] { "Symbol" }, "IBM", mergeEventType); _parentView = new SupportMapView(schema); _parentView.AddView(_myView); _childView = new SupportSchemaNeutralView(); _myView.AddView(_childView); }
public void TestCanReuse() { _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(new Object[] { "Symbol", "Feed" })); _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, _parents); Assert.IsFalse(_factory.CanReuse(new FirstElementView(null))); Assert.IsFalse(_factory.CanReuse(new MergeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(), SupportExprNodeFactory.MakeIdentNodesMD("Symbol"), null, true))); Assert.IsTrue(_factory.CanReuse(new MergeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(), SupportExprNodeFactory.MakeIdentNodesMD("Symbol", "Feed"), null, true))); }
public void TestCanReuse() { AgentInstanceContext agentInstanceContext = SupportStatementContextFactory.MakeAgentInstanceContext(); _factory.SetViewParameters(null, TestViewSupport.ToExprListBean(new Object[] { "IntPrimitive" })); _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)), SupportStatementContextFactory.MakeContext(), null, null); Assert.IsFalse(_factory.CanReuse(new FirstElementView(null), agentInstanceContext)); }
public static void Validate1StreamBean(ExprNode topNode) { var supportContainer = SupportContainer.Instance; var eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); StreamTypeService streamTypeService = new StreamTypeServiceImpl(eventType, "s0", false, "uri"); ExprNodeUtility.GetValidatedSubtree(ExprNodeOrigin.SELECT, topNode, SupportExprValidationContextFactory.Make(supportContainer, streamTypeService)); }
private void TryParameter(Object[] @params, String fieldName) { _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(@params)); _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, null); UnivariateStatisticsView view = (UnivariateStatisticsView)_factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext()); Assert.AreEqual(fieldName, view.FieldExpression.ToExpressionStringMinPrecedenceSafe()); }
public void SetUp() { _container = SupportContainer.Reset(); _lockFactory = new FilterServiceGranularLockFactoryReentrant(_container.RWLockManager()); _eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); _topNode = new FilterHandleSetNode(_container.RWLockManager().CreateDefaultLock()); _filterCallbacks = new List <FilterHandle>(); _pathsAddedTo = new List <ArrayDeque <EventTypeIndexBuilderIndexLookupablePair> >(); _testFilterSpecs = new List <FilterSpecCompiled>(); _matchedEvents = new List <EventBean>(); _unmatchedEvents = new List <EventBean>(); // Any int and double value specified here must match only the current filter spec not any other filter spec _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 100000 })); _matchedEvents.Add(MakeEvent(9999999, -1)); _unmatchedEvents.Add(MakeEvent(0, -1)); _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 10, "DoublePrimitive", FilterOperator.EQUAL, 0.5 })); _matchedEvents.Add(MakeEvent(10, 0.5)); _unmatchedEvents.Add(MakeEvent(0, 0.5)); _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.EQUAL, 0.8 })); _matchedEvents.Add(MakeEvent(-1, 0.8)); _unmatchedEvents.Add(MakeEvent(-1, 0.1)); _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.EQUAL, 99.99, "IntPrimitive", FilterOperator.LESS, 1 })); _matchedEvents.Add(MakeEvent(0, 99.99)); _unmatchedEvents.Add(MakeEvent(2, 0.5)); _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.GREATER, .99, "IntPrimitive", FilterOperator.EQUAL, 5001 })); _matchedEvents.Add(MakeEvent(5001, 1.1)); _unmatchedEvents.Add(MakeEvent(5002, 0.98)); _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.LESS, -99000 })); _matchedEvents.Add(MakeEvent(-99001, -1)); _unmatchedEvents.Add(MakeEvent(-98999, -1)); _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 11, "DoublePrimitive", FilterOperator.GREATER, 888.0 })); _matchedEvents.Add(MakeEvent(11, 888.001)); _unmatchedEvents.Add(MakeEvent(10, 888)); _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.EQUAL, 973, "DoublePrimitive", FilterOperator.EQUAL, 709.0 })); _matchedEvents.Add(MakeEvent(973, 709)); _unmatchedEvents.Add(MakeEvent(0, 0.5)); _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.EQUAL, 973, "DoublePrimitive", FilterOperator.EQUAL, 655.0 })); _matchedEvents.Add(MakeEvent(973, 655)); _unmatchedEvents.Add(MakeEvent(33838, 655.5)); }
private void TryParameter(Object[] @params, String fieldNameX, String fieldNameY) { _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(@params)); _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(_container), null, null); RegressionLinestView view = (RegressionLinestView)_factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(_container)); Assert.AreEqual(fieldNameX, view.ExpressionX.ToExpressionStringMinPrecedenceSafe()); Assert.AreEqual(fieldNameY, view.ExpressionY.ToExpressionStringMinPrecedenceSafe()); }
public void TestGetGetter() { var supportEventTypeFactory = SupportEventTypeFactory.GetInstance(container); var bean = SupportEventBeanFactory.CreateObject(supportEventTypeFactory, new SupportBeanPropertyNames()); var property = typeof(SupportBeanPropertyNames).GetProperty("A"); var getter = PropertyHelper.GetGetter(property, EventBeanTypedEventFactoryCompileTime.INSTANCE, supportEventTypeFactory.BEAN_EVENT_TYPE_FACTORY); Assert.AreEqual("", getter.Get(bean)); }
public void SetUp() { lockFactory = new FilterServiceGranularLockFactoryReentrant( container.RWLockManager()); eventType = SupportEventTypeFactory .GetInstance(container) .CreateBeanType(typeof(SupportBean)); }
private static EventPropertyGetter[] MakeGetters() { EventType eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); var getters = new EventPropertyGetter[2]; getters[0] = eventType.GetGetter("TheString"); getters[1] = eventType.GetGetter("IntPrimitive"); return(getters); }
public void TestAttaches() { // Should attach to anything as long as the fields exists EventType parentType = SupportEventTypeFactory.CreateBeanType( typeof(SupportBean)); _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListBean(new Object[] { "IntBoxed" })); _factory.Attach(parentType, SupportStatementContextFactory.MakeContext(_container), null, null); }
private void TryParameter(Object param, String fieldName) { UniqueByPropertyViewFactory factory = new UniqueByPropertyViewFactory(); factory.SetViewParameters(null, TestViewSupport.ToExprListBean(new Object[] { param })); factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)), SupportStatementContextFactory.MakeContext(), null, null); UniqueByPropertyView view = (UniqueByPropertyView)factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext()); Assert.AreEqual(fieldName, view.CriteriaExpressions[0].ToExpressionStringMinPrecedenceSafe()); }
public void SetUp() { _supportFilterService = new SupportFilterServiceImpl(); _streamFactoryService = new StreamFactorySvcImpl("default", true); var eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); _filterSpecs = new FilterSpecCompiled[3]; _filterSpecs[0] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "a" }); _filterSpecs[1] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "a" }); _filterSpecs[2] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "b" }); }
public void SetUp() { _eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); PropertyIndexedEventTableFactory factory = new PropertyIndexedEventTableFactory(0, _eventType, new String[] { "TheString", "IntPrimitive" }, false, null); _propertyMapEventIndex = (PropertyIndexedEventTable)factory.MakeEventTables(null)[0]; _lookupStrategy = new IndexedTableLookupStrategy(_eventType, new String[] { "TheString", "IntPrimitive" }, _propertyMapEventIndex); _propertyMapEventIndex.Add(new EventBean[] { SupportEventBeanFactory.CreateObject(new SupportBean("a", 1)) }); }
public void TestCheckLong() { EventType mySchema = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)); Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongPrimitive")); Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongBoxed")); Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongBoxed")); Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "dummy") != null); Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "IntPrimitive") != null); Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "DoubleBoxed") != null); }
public void TestCanReuse() { factory.SetViewParameters(new ViewFactoryContext(null, 1, 1, null, null), TestViewSupport.ToExprListMD(new object[] { "Price", "Volume" })); factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, null); Assert.IsFalse(factory.CanReuse(new FirstElementView(null))); EventType type = CorrelationView.CreateEventType(SupportStatementContextFactory.MakeContext(), null, 1); Assert.IsFalse(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), SupportExprNodeFactory.MakeIdentNodeMD("Price"), type, null))); Assert.IsFalse(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Feed"), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), type, null))); Assert.IsTrue(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Price"), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), type, null))); }