### Question:
InlineSubroutineDeclarationSmoosher implements IndexedSmoosher<String> { @Override public boolean canSmoosh(final String line) { if (line == null) { throw new IllegalArgumentException("Line cannot be null."); } return Pattern.compile("^\\s*subroutine\\s*\\(.*", Pattern.CASE_INSENSITIVE).matcher(line).matches(); }  @Override boolean canSmoosh(final String line); @Override int getEndingIndex(); @Override String smoosh(final int startingIndex, final List<String> list);  }### Answer:
@Test public void testCanSmoosh() { assertThat(smoosher.canSmoosh("subroutine (some_sub(null) = null)")).isTrue(); assertThat(smoosher.canSmoosh("subroutine some_sub(null) = null")).isFalse(); }