/** * Empty events list is not allowed. */ @Test(expected = IllegalStateException.class) public void testEnsureFrequencyFailEmptyEventsList() { Scenario.builder(Scenario.DEFAULT_PROBLEM_CLASS) .ensureFrequency(Predicates.<TimedEvent>alwaysTrue(), 1); }
/** * Negative frequency is not allowed. */ @Test(expected = IllegalArgumentException.class) public void testEnsureFrequencyFailFrequency() { Scenario.builder(Scenario.DEFAULT_PROBLEM_CLASS) .ensureFrequency(Predicates.<TimedEvent>alwaysTrue(), -1); }
assertTrue(b.eventList.isEmpty()); b.addEvents(events) .ensureFrequency(Predicates.equalTo(ev3), 1); assertEquals(asList(ev1, ev2, ev4, ev5, ev3), b.eventList); b.ensureFrequency(Predicates.equalTo(ev1), 3); assertEquals(asList(ev1, ev2, ev4, ev5, ev3, ev1, ev1), b.eventList); b.ensureFrequency(Predicates.equalTo(ev1), 3); assertEquals(asList(ev1, ev2, ev4, ev5, ev3, ev1, ev1), b.eventList);
/** * Filter matches must be equal. */ @Test(expected = IllegalArgumentException.class) public void testEnsureFrequencyFailFilter2() { Scenario .builder(Scenario.DEFAULT_PROBLEM_CLASS) .addEvent(EventA.create(0)) .addEvent(EventA.create(1)) .ensureFrequency(Predicates.instanceOf(EventA.class), 1); }
/** * Filter must match at least one event. */ @Test(expected = IllegalArgumentException.class) public void testEnsureFrequencyFailFilter1() { Scenario.builder(Scenario.DEFAULT_PROBLEM_CLASS) .addEvent(EventA.create(0)) .ensureFrequency(Predicates.<TimedEvent>alwaysFalse(), 1); }