package org.pitest.functional.predicate; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.pitest.functional.prelude.Prelude.or; import org.junit.Test; public class OrTest { @SuppressWarnings("unchecked") @Test public void shouldBeFalseWhenGivenNoPredicates() { final Or<Object> testee = or(); assertFalse(testee.apply(null)); } @SuppressWarnings("unchecked") @Test public void shouldBeTrueWhenGivenTrue() { final Or<Object> testee = or(True.all()); assertTrue(testee.apply(null)); } @SuppressWarnings("unchecked") @Test public void shouldBeFalseWhenGivenFalse() { final Or<Object> testee = or(False.instance()); assertFalse(testee.apply(null)); } @SuppressWarnings("unchecked") @Test public void shouldBeTrueWhenTrueOrTrue() { final Or<Object> testee = or(True.all(), True.all()); assertTrue(testee.apply(null)); } @SuppressWarnings("unchecked") @Test public void shouldBeTrueWhenTrueOrFalse() { final Or<Object> testee = or(True.all(), False.instance()); assertTrue(testee.apply(null)); } @SuppressWarnings("unchecked") @Test public void shouldeFalseWhenFalseOrFalse() { final Or<Object> testee = or(False.instance(), False.instance()); assertFalse(testee.apply(null)); } }