@Test public void addInvalidArgs_IncompatibleTypeGiven_ShouldThrowIae() { assertThrows(IllegalArgumentException.class, () -> { tester.addInvalidArgs(0, NullPointerException.class, 1L); }); }
@Test public void addInvalidArgs_NullOnPrimitiveTypeGiven_ShouldThrowIae() { assertThrows(IllegalArgumentException.class, () -> { tester.addInvalidArgs(1, NullPointerException.class, 1.0, null); }); }
@Test public void testPreconditions_EqualArgumentSetsGiven_ShouldIgnoreDupesAndTestInvalidCombinations() { Double bValid = new Double(0.0); Double bInvalid = new Double(-0.1); tester.addValidArgs(0, 0, 0); tester.addInvalidArgs(0, NullPointerException.class, null, null); tester.addValidArgs(1, bValid, bValid, 0.0); tester.addInvalidArgs(1, IllegalArgumentException.class, bInvalid, bInvalid, -0.1); tester.testPreconditions(); assertEquals(0, validCaptures.size()); assertEquals(2, invalidCaptures.size()); assertTrue(invalidCaptures.contains(new SomeClassCapture(0, -0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.0))); }
@Test public void testPreconditions_InvalidArgumentGivenThatIsValid_ShouldThrowException() { tester.addValidArgs(0, 0); tester.addInvalidArgs(0, NullPointerException.class, 1); tester.addValidArgs(1, 0.0); assertThrows(AssertionError.class, tester::testPreconditions); }
@Test public void addArgs_NullAsVarargs_ShouldAccept() { tester.addValidArgs(0, 0); tester.addInvalidArgs(0, NullPointerException.class, (Object[]) null); tester.addValidArgs(1, 0.0); tester.testPreconditions(); assertEquals(1, invalidCaptures.size()); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.0))); }
@Test public void testPreconditions_ArgumentSetsGiven_ShouldTestInvalidCombinations() { tester.addValidArgs(0, 0, 1); tester.addInvalidArgs(0, NullPointerException.class, new Object[] {null}); tester.addValidArgs(1, 0.0, 0.1); tester.addInvalidArgs(1, IllegalArgumentException.class, -0.1, -0.2); tester.testPreconditions(); assertEquals(0, validCaptures.size()); assertEquals(6, invalidCaptures.size()); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.0))); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(0, -0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(0, -0.2))); assertTrue(invalidCaptures.contains(new SomeClassCapture(1, -0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(1, -0.2))); } @Test
@Test public void addInvalidArgs_IncorrectExceptionGiven_ShouldThrowAssertionError() { assertThrows(AssertionError.class, () -> { tester .addInvalidArgs(0, IllegalArgumentException.class, new Object[] { null }) .addValidArgs(0, 1) .addValidArgs(1, 1.0) .testPreconditions(); }); }
@Test public void testPreconditionsAndValidCombinations_ArgumentSetsGiven_ShouldTestInvalidAndValidCombinations() { tester.addValidArgs(0, 0, 1); tester.addInvalidArgs(0, NullPointerException.class, new Object[] {null}); tester.addValidArgs(1, 0.0, 0.1); tester.addInvalidArgs(1, IllegalArgumentException.class, -0.1, -0.2); tester.testPreconditionsAndValidCombinations(); assertEquals(4, validCaptures.size()); assertTrue(validCaptures.contains(new SomeClassCapture(0, 0.0))); assertTrue(validCaptures.contains(new SomeClassCapture(0, 0.1))); assertTrue(validCaptures.contains(new SomeClassCapture(1, 0.0))); assertTrue(validCaptures.contains(new SomeClassCapture(1, 0.1))); assertEquals(6, invalidCaptures.size()); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.0))); assertTrue(invalidCaptures.contains(new SomeClassCapture(null, 0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(0, -0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(0, -0.2))); assertTrue(invalidCaptures.contains(new SomeClassCapture(1, -0.1))); assertTrue(invalidCaptures.contains(new SomeClassCapture(1, -0.2))); }
@Test public void testValidCombinations_ValidArgumentGivenThatIsInalid_ShouldThrowException() { tester.addValidArgs(0, 0); tester.addInvalidNpeArg(0); tester.addValidArgs(1, -0.1); tester.addInvalidArgs(1, IllegalArgumentException.class, -0.2); assertThrows(AssertionError.class, tester::testValidCombinations); }