Buggy code:
@ RunWith ( MockitoJUnitRunner . class ) public class OperationServiceImplTest { private final class MatchLeftOperandName extends BaseMatcher < SLeftOperand > { private final String name ; public MatchLeftOperandName ( final String name ) { } @ Override public boolean matches ( final Object item ) { } @ Override public void describeTo ( final Description description ) { } } private final class MatchOperationType extends BaseMatcher < SOperation > { private final SOperatorType type ; public MatchOperationType ( final SOperatorType type ) { } @ Override public boolean matches ( final Object item ) { } @ Override public void describeTo ( final Description description ) { } } @ Mock private ExpressionResolverService expressionResolverService ; @ Mock private LeftOperandHandlerProvider leftOperandHandlerProvider ; @ Mock private LeftOperandHandler leftOperandHandler1 ; @ Mock private LeftOperandHandler leftOperandHandler2 ; @ Mock private LeftOperandHandler leftOperandHandler3 ; @ Mock private LeftOperandHandler leftOperandHandler4 ; @ Mock private TechnicalLoggerService logger ; @ Mock private OperationExecutorStrategyProvider operationExecutorStrategyProvider ; @ Mock private OperationExecutorStrategy operationExecutorStrategy1 ; @ Mock private OperationExecutorStrategy operationExecutorStrategy2 ; @ Mock private OperationExecutorStrategy operationExecutorStrategy3 ; private OperationServiceImpl operationServiceImpl ; private SLeftOperandImpl buildLeftOperand ( final String type , final String dataName ) { } private SOperation buildOperation ( final String type , final String dataName , final SOperatorType operatorType ) { } @ Before public void before ( ) throws SOperationExecutionException { } @ Test public void should_UpdateLeftOperands_call_leftOperandHandlers ( ) throws Exception { } @ Test public void should_retrieveLeftOperandsAndPutItInExpressionContextIfNotIn_call_leftOperandHandlers ( ) throws Exception { } @ Test public void should_executeOperator_call_OperationStrategies ( ) throws Exception { } @ Test public void shouldNotRetrieveLeftOperandOnAssignementOperation ( ) throws Exception { } @ Test public void shouldNotPutInContextWhenLeftOperandRetrievesNullValue ( ) throws Exception { } @ Test public void should_retrieveLeftOperandsAndPutItInExpressionContextIfNotIn_do_not_override_value_in_map ( ) throws Exception { } @ Test public void executeOperatorsShouldReturnASingleUpdateForTheSameDataOfTheSameOperator ( ) throws Exception { } @ Test public void executeOperatorsShouldReturnATwoUpdatesForTheDifferentDataOfTheSameOperator ( ) throws Exception { final List < SOperation > operations = new ArrayList < SOperation > ( ) ; operations . add ( buildOperation ( "type1" , "data2" , JAVA_METHOD ) ) ; operations . add ( buildOperation ( "type1" , "data1" , JAVA_METHOD ) ) ; final SExpressionContext expressionContext = new SExpressionContext ( 123L , "containerType" , Collections . < String , Object > singletonMap ( "data1" , "givenValue" ) ) ; final OperationServiceImpl spy = spy ( operationServiceImpl ) ; final Map < SLeftOperand , Boolean > updates = spy . executeOperators ( operations , expressionContext ) ; <START_BUG> assertThat ( updates ) . containsExactly ( MapEntry . entry ( buildLeftOperand ( "type1" , "data2" ) , true ) , MapEntry . entry ( buildLeftOperand ( "type1" , "data1" ) , true ) ) ; <END_BUG> } }

Fix:
assertThat ( updates ) . containsOnly ( MapEntry . entry ( buildLeftOperand ( "type1" , "data2" ) , true ) , MapEntry . entry ( buildLeftOperand ( "type1" , "data1" ) , true ) ) ;