title: Mutation not killed when it should be with a method with an auto-injected field
body: <p>I have the following:</p>
  
  <pre><code>public class UnsetProperty extends Command {
  
      @Resource
      private SetProperty setProperty;
  
      public String parse(String[] args) {
          if (args.length != 4) {
              throw new RuntimeException("Incorrect number of arguments. Expected 4. Got " + args.length);
          }
          String publisher = args[0];
          String version = args[1];
          String mode = args[2];
          String property = args[3];
  
          /*
           * Unsetting a property is done by changing the current property to null.
           * Technically, the old property doesn't get changed, a new one is inserted with
           * a higher revision number, and it becomes the canonical one.
          */
          <strong>setProperty.setProperty(publisher, version, mode, property, null, false);</strong>
          return "";
      }
  }</code></pre>
  
  <p>and the following test:</p>
  
  <pre><code>public class UnsetPropertyTest extends CommandTest {
      @Configuration
      public static class Config {
  
          @Bean(name = "mockSetProperty")
          public SetProperty getSetProperty() {
              return mock(SetProperty.class);
          }
  
          @Bean
          public UnsetProperty getUnsetProperty() {
              return new UnsetProperty();
          }
  
      }
  
      @Resource
      @InjectMocks
      private UnsetProperty unsetProperty;
  
      @Resource(name = "mockSetProperty")
      private SetProperty setProperty;
  
      // ... SNIP ...
  
      @Test
      public void testCallsSetPropertyWithCorrectParameters() throws SQLException, TaboolaException {
          final String[] args = new String[]{"publisher", "version", "mode", "property"};
          final String output = unsetProperty.parse(args);
          verify(setProperty).setProperty("publisher", "version", "mode", "property", null, false);
          // The above line should have killed the mutation!
          verifyNoMoreInteractions(setProperty);
          assertThat(output).isEqualTo("");
      }
  }
  </code></pre>
  
  <p>The test passes, as expected. When I run it through PIT I get the following result</p>
  
  <pre><code>33   1. removed call to my/package/SetProperty::setProperty → SURVIVED
  </code></pre>
  
  <p>Line #33 is highlighted in the class code.</p>
  
  <p>The tests examined are as follows:</p>
  
  <ul>
  <li><code>my.package.UnsetPropertyTest.testCallsSetPropertyWithCorrectParameters(my.package.UnsetPropertyTest)</code>
  (32 ms)</li>
  <li><code>my.package.UnsetPropertyTest.testUnsetThrowsForIncorrectNumberOfParameters(my.package.UnsetPropertyTest)</code>
  (3 ms)</li>
  </ul>
  
  <p>Now:</p>
  
  <ul>
  <li>When I change the test invoke parameters (<code>args</code>) the test fails. As expected</li>
  <li>When I change the assertion (<code>verify(setProperty).setProperty(...)</code>) arguments the test fails. As expected.</li>
  <li>When I manually comment out the function call highlighted in the first code block, the test fails.</li>
  </ul>
  
  <p>Why does the mutation survive?</p>
  
  <p>I'm using Java 8, Mockito 1.9.5 and PIT 1.1.4. </p>