### Question:
LineNumberFilter implements ViolationFilter { @Override public boolean exclude(final String scriptName, final Violation violation) { if (scriptName == null) { throw new IllegalArgumentException("Script name cannot be null."); } if (violation == null) { throw new IllegalArgumentException("Violation cannot be null."); } if (violation.getLineNumber() == null) { LOGGER.warn( "An exclusion of line number {} was set, but violation {} has no line number information available.", Integer.valueOf(lineNumber), violation); return false; } return lineNumber == violation.getLineNumber().intValue(); } LineNumberFilter(final int lineNumber); @Override boolean exclude(final String scriptName, final Violation violation); @Override String toString();  }### Answer:
@Test public void testExclude() { final Violation violation = mock(Violation.class); when(violation.getLineNumber()).thenReturn(Integer.valueOf(lineNumber)); assertThat(filter.exclude("a.script", violation)).isTrue(); }
@Test public void testExcludeNotEquals() { final Violation violation = mock(Violation.class); when(violation.getLineNumber()).thenReturn(Integer.valueOf(lineNumber + 1)); assertThat(filter.exclude("another.script", violation)).isFalse(); }
@Test public void testExcludeZeroLineNumber() { final Violation violation = mock(Violation.class); when(violation.getLineNumber()).thenReturn(0); assertThat(filter.exclude("a.script", violation)).isFalse(); }
@Test public void testExcludeNullLineNumber() { final Violation violation = mock(Violation.class); when(violation.getLineNumber()).thenReturn(null); assertThat(filter.exclude("a.script", violation)).isFalse(); }