ConditionOr extends ConditionListImpl { @Override public boolean evaluate(AdaptrisMessage message) throws CoreException { boolean returnValue = false; for(Condition condition : this.getConditions()) { if(condition.evaluate(message)) { returnValue = true; break; } } return returnValue; } ConditionOr(); @Override boolean evaluate(AdaptrisMessage message);  }
@Test public void testOrAllTrue() throws Exception { when(mockConditionOne.evaluate(adaptrisMessage)).thenReturn(true); when(mockConditionTwo.evaluate(adaptrisMessage)).thenReturn(true); when(mockConditionThree.evaluate(adaptrisMessage)).thenReturn(true); assertTrue(conditionOr.evaluate(adaptrisMessage)); verify(mockConditionOne).evaluate(adaptrisMessage); verify(mockConditionTwo, times(0)).evaluate(adaptrisMessage); verify(mockConditionThree, times(0)).evaluate(adaptrisMessage); }
@Test public void testOrAllFalse() throws Exception { when(mockConditionOne.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionTwo.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionThree.evaluate(adaptrisMessage)).thenReturn(false); assertFalse(conditionOr.evaluate(adaptrisMessage)); verify(mockConditionOne).evaluate(adaptrisMessage); verify(mockConditionTwo).evaluate(adaptrisMessage); verify(mockConditionThree).evaluate(adaptrisMessage); }
@Test public void testOrLastConditionTrue() throws Exception { when(mockConditionOne.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionTwo.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionThree.evaluate(adaptrisMessage)).thenReturn(true); assertTrue(conditionOr.evaluate(adaptrisMessage)); verify(mockConditionOne).evaluate(adaptrisMessage); verify(mockConditionTwo).evaluate(adaptrisMessage); verify(mockConditionThree).evaluate(adaptrisMessage); }
@Test public void testOrFirstConditionTrue() throws Exception { when(mockConditionOne.evaluate(adaptrisMessage)).thenReturn(true); when(mockConditionTwo.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionThree.evaluate(adaptrisMessage)).thenReturn(false); assertTrue(conditionOr.evaluate(adaptrisMessage)); verify(mockConditionOne).evaluate(adaptrisMessage); verify(mockConditionTwo, times(0)).evaluate(adaptrisMessage); verify(mockConditionThree, times(0)).evaluate(adaptrisMessage); }
@Test public void testOrMiddleConditionTrue() throws Exception { when(mockConditionOne.evaluate(adaptrisMessage)).thenReturn(false); when(mockConditionTwo.evaluate(adaptrisMessage)).thenReturn(true); when(mockConditionThree.evaluate(adaptrisMessage)).thenReturn(false); assertTrue(conditionOr.evaluate(adaptrisMessage)); verify(mockConditionOne).evaluate(adaptrisMessage); verify(mockConditionTwo).evaluate(adaptrisMessage); verify(mockConditionThree, times(0)).evaluate(adaptrisMessage); }
@Test public void testNoConditionsSet() throws Exception { conditionOr.getConditions().clear(); assertFalse(conditionOr.evaluate(adaptrisMessage)); }