public override void Run(EPServiceProvider epService) { IDictionary <TimeUnit, EPServiceProvider> epServices = SupportEngineFactory.SetupEnginesByTimeUnit(); RunAssertionEventTime(epServices); RunAssertionLongProperty(epServices); }
public override void Run(EPServiceProvider defaultEPService) { IDictionary <TimeUnit, EPServiceProvider> epServices = SupportEngineFactory.SetupEnginesByTimeUnit(); foreach (EPServiceProvider epService in epServices.Values) { epService.EPAdministrator.Configuration.AddEventType <SupportBean>(); } EPServiceProvider engineMillis = epServices.Get(TimeUnit.MILLISECONDS); EPServiceProvider engineMicros = epServices.Get(TimeUnit.MICROSECONDS); RunAssertionTimeWindow(engineMillis, 0, "1", 1000); RunAssertionTimeWindow(engineMicros, 0, "1", 1000000); RunAssertionTimeWindow(engineMicros, 0, "10 milliseconds", 10000); RunAssertionTimeWindow(engineMicros, 0, "10 microseconds", 10); RunAssertionTimeWindow(engineMicros, 0, "1 seconds 10 microseconds", 1000010); RunAssertionTimeWindow(engineMillis, 123456789, "10", 123456789 + 10 * 1000); RunAssertionTimeWindow(engineMicros, 123456789, "10", 123456789 + 10 * 1000000); RunAssertionTimeWindow(engineMillis, 0, "1 months 10 milliseconds", TimePlusMonth(0, 1) + 10); RunAssertionTimeWindow(engineMicros, 0, "1 months 10 microseconds", TimePlusMonth(0, 1) * 1000 + 10); long currentTime = DateTimeParser.ParseDefaultMSec("2002-05-1T08:00:01.999"); RunAssertionTimeWindow(engineMillis, currentTime, "1 months 50 milliseconds", TimePlusMonth(currentTime, 1) + 50); RunAssertionTimeWindow(engineMicros, currentTime * 1000 + 33, "3 months 100 microseconds", TimePlusMonth(currentTime, 3) * 1000 + 33 + 100); }
public override void Run(EPServiceProvider defaultService) { IDictionary <TimeUnit, EPServiceProvider> epServices = SupportEngineFactory.SetupEnginesByTimeUnit(); foreach (EPServiceProvider epService in epServices.Values) { epService.EPAdministrator.Configuration.AddEventType <SupportBean>(); } RunAssertionWithTime(epServices.Get(TimeUnit.MILLISECONDS), 0, 10000); RunAssertionWithTime(epServices.Get(TimeUnit.MICROSECONDS), 0, 10000000); }
public override void Run(EPServiceProvider epService) { IDictionary <TimeUnit, EPServiceProvider> epServices = SupportEngineFactory.SetupEnginesByTimeUnit(); long time = DateTimeParser.ParseDefaultMSec("2002-05-30T09:00:00.000"); long currentTime = DateTimeHelper.CurrentTimeMillis; EPServiceProvider engineMillis = epServices.Get(TimeUnit.MILLISECONDS); EPServiceProvider engineMicros = epServices.Get(TimeUnit.MICROSECONDS); RunAssertionPattern(engineMillis, 0, "timer:interval(1)", 1000); RunAssertionPattern(engineMicros, 0, "timer:interval(1)", 1000000); RunAssertionPattern(engineMillis, 0, "timer:interval(10 sec 5 msec)", 10005); RunAssertionPattern(engineMicros, 0, "timer:interval(10 sec 5 msec 1 usec)", 10005001); RunAssertionPattern(engineMillis, 0, "timer:interval(1 month 10 msec)", TimePlusMonth(0, 1) + 10); RunAssertionPattern(engineMicros, 0, "timer:interval(1 month 10 usec)", TimePlusMonth(0, 1) * 1000 + 10); RunAssertionPattern(engineMillis, currentTime, "timer:interval(1 month 50 msec)", TimePlusMonth(currentTime, 1) + 50); RunAssertionPattern(engineMicros, currentTime * 1000 + 33, "timer:interval(3 month 100 usec)", TimePlusMonth(currentTime, 3) * 1000 + 33 + 100); RunAssertionPattern(engineMillis, time, "timer:at(1, *, *, *, *, *)", time + 60000); RunAssertionPattern(engineMicros, time * 1000 + 123, "timer:at(1, *, *, *, *, *)", time * 1000 + 60000000 + 123); // Schedule Date-only RunAssertionPattern(engineMillis, time, "timer:schedule(iso:'2002-05-30T09:01:00')", time + 60000); RunAssertionPattern(engineMicros, time * 1000 + 123, "timer:schedule(iso:'2002-05-30T09:01:00')", time * 1000 + 60000000); // Schedule Period-only RunAssertionPattern(engineMillis, time, "every timer:schedule(period: 2 minute)", time + 120000); RunAssertionPattern(engineMicros, time * 1000 + 123, "every timer:schedule(period: 2 minute)", time * 1000 + 123 + 120000000); // Schedule Date+period RunAssertionPattern(engineMillis, time, "every timer:schedule(iso:'2002-05-30T09:00:00/PT1M')", time + 60000); RunAssertionPattern(engineMicros, time * 1000 + 345, "every timer:schedule(iso:'2002-05-30T09:00:00/PT1M')", time * 1000 + 60000000); // Schedule recurring period RunAssertionPattern(engineMillis, time, "every timer:schedule(iso:'R2/PT1M')", time + 60000, time + 120000); RunAssertionPattern(engineMicros, time * 1000 + 345, "every timer:schedule(iso:'R2/PT1M')", time * 1000 + 345 + 60000000, time * 1000 + 345 + 120000000); // Schedule date+recurring period RunAssertionPattern(engineMillis, time, "every timer:schedule(iso:'R2/2002-05-30T09:01:00/PT1M')", time + 60000, time + 120000); RunAssertionPattern(engineMicros, time * 1000 + 345, "every timer:schedule(iso:'R2/2002-05-30T09:01:00/PT1M')", time * 1000 + 60000000, time * 1000 + 120000000); // Schedule with date computation RunAssertionPattern(engineMillis, time, "timer:schedule(date: current_timestamp.WithTime(9, 1, 0, 0))", time + 60000); RunAssertionPattern(engineMicros, time * 1000 + 345, "timer:schedule(date: current_timestamp.WithTime(9, 1, 0, 0))", time * 1000 + 345 + 60000000); }
public void TestClientMicrosecond() { Configuration config = SupportConfigFactory.GetConfiguration(); config.EngineDefaults.Threading.IsInternalTimerEnabled = true; config.EngineDefaults.TimeSource.TimeUnit = TimeUnit.MICROSECONDS; try { EPServiceProviderManager.GetDefaultProvider(config).Initialize(); Assert.Fail(); } catch (ConfigurationException ex) { SupportMessageAssertUtil.AssertMessage(ex, "Internal timer requires millisecond time resolution"); } EPServiceProvider epService = SupportEngineFactory.SetupEngineDefault(TimeUnit.MICROSECONDS, 0); try { epService.EPRuntime.SendEvent(new TimerControlEvent(TimerControlEvent.ClockTypeEnum.CLOCK_INTERNAL)); Assert.Fail(); } catch (EPException ex) { SupportMessageAssertUtil.AssertMessage(ex, "Internal timer requires millisecond time resolution"); } }
public void SetUp() { epServices = SupportEngineFactory.SetupEnginesByTimeUnit(); }