From ba4dbef2d949880a3b3d22f9793f41d6321d5c27 Mon Sep 17 00:00:00 2001 From: jrm Date: Tue, 23 Feb 2016 16:46:27 -0800 Subject: [PATCH] cleanup the Java divide by zero end-to-end test Summary:public This just simplifies the end-to-end tests for Dividde By Zero to make the debugging easier when this test fails. Reviewed By: cristianoc Differential Revision: D2966296 fb-gh-sync-id: 5eaa1b5 shipit-source-id: 5eaa1b5 --- .../endtoend/java/infer/DivideByZeroTest.java | 82 ++++--------------- 1 file changed, 14 insertions(+), 68 deletions(-) diff --git a/infer/tests/endtoend/java/infer/DivideByZeroTest.java b/infer/tests/endtoend/java/infer/DivideByZeroTest.java index 04956f640..15fe68066 100644 --- a/infer/tests/endtoend/java/infer/DivideByZeroTest.java +++ b/infer/tests/endtoend/java/infer/DivideByZeroTest.java @@ -10,9 +10,7 @@ package endtoend.java.infer; import static org.hamcrest.MatcherAssert.assertThat; -import static utils.matchers.ResultContainsErrorInMethod.contains; -import static utils.matchers.ResultContainsLineNumbers.containsLines; -import static utils.matchers.ResultContainsOnlyTheseErrors.containsOnly; +import static utils.matchers.ResultContainsExactly.containsExactly; import org.junit.BeforeClass; import org.junit.Test; @@ -24,7 +22,7 @@ import utils.InferResults; public class DivideByZeroTest { - public static final String DivideByZero = + public static final String SOURCE_FILE = "infer/tests/codetoanalyze/java/infer/DivideByZero.java"; public static final String DIVIDE_BY_ZERO = "DIVIDE_BY_ZERO"; @@ -33,74 +31,22 @@ public class DivideByZeroTest { @BeforeClass public static void loadResults() throws InterruptedException, IOException { - inferResults = InferResults.loadInferResults(DivideByZeroTest.class, DivideByZero); + inferResults = InferResults.loadInferResults(DivideByZeroTest.class, SOURCE_FILE); } @Test - public void whenInferRunsOnDivideByZeroLocalThenDivideByZeroErrorFound() - throws InterruptedException, IOException, InferException { - assertThat( - "Results should contain divide by zero error.", inferResults, - contains( - DIVIDE_BY_ZERO, - DivideByZero, - "divByZeroLocal" - ) - ); - } - - @Test - public void whenInferRunsOnCallDivideByZeroInterProcThenDivideByZeroErrorFound() - throws InterruptedException, IOException, InferException { - assertThat( - "Results should contain divide by zero error.", - inferResults, - contains( - DIVIDE_BY_ZERO, - DivideByZero, - "callDivideByZeroInterProc" - ) - ); - } - - @Test - public void whenInferRunsOnDivideByZeroWithStaticFieldThenDivideByZeroErrorFound() - throws InterruptedException, IOException, InferException { - assertThat( - "Results should contain divide by zero error.", - inferResults, - contains( - DIVIDE_BY_ZERO, - DivideByZero, - "divideByZeroWithStaticField" - ) - ); - } - - @Test - public void whenInferRunsOnDivideByZeroThenTheLineNumbersAreReportedCorr() - throws InterruptedException, IOException, InferException { - int[] lines = {28}; - assertThat( - "Result should contain correct line numbers.", - inferResults, - containsLines(lines)); - } - - @Test - public void whenInferRunsOnDivideByZeroThenOnlyTheExpectedErrorsAreFound() - throws InterruptedException, IOException, InferException { - String[] expectedMethods = { - "divByZeroLocal", - "callDivideByZeroInterProc", - "divideByZeroWithStaticField" + public void matchErrors() + throws IOException, InterruptedException, InferException { + String[] methods = { + "divByZeroLocal", + "callDivideByZeroInterProc", + "divideByZeroWithStaticField", }; - assertThat( - "No unexpected errors should be found", inferResults, - containsOnly( - DIVIDE_BY_ZERO, - DivideByZero, - expectedMethods)); + assertThat("Results should contain " + DIVIDE_BY_ZERO, + inferResults, + containsExactly(DIVIDE_BY_ZERO, + SOURCE_FILE, + methods)); } }