View Javadoc
1   /*
2    * Copyright (c) 2006 JMockit developers
3    * This file is subject to the terms of the MIT license (see LICENSE.txt).
4    */
5   package mockit.internal.expectations.argumentMatching;
6   
7   import edu.umd.cs.findbugs.annotations.NonNull;
8   import edu.umd.cs.findbugs.annotations.Nullable;
9   
10  public final class SamenessMatcher implements ArgumentMatcher<SamenessMatcher> {
11      @Nullable
12      private final Object object;
13  
14      public SamenessMatcher(@Nullable Object object) {
15          this.object = object;
16      }
17  
18      @Override
19      public boolean same(@NonNull SamenessMatcher other) {
20          return object == other.object;
21      }
22  
23      @Override
24      public boolean matches(@Nullable Object argValue) {
25          return argValue == object;
26      }
27  
28      @Override
29      public void writeMismatchPhrase(@NonNull ArgumentMismatch argumentMismatch) {
30          argumentMismatch.append("same instance as ").appendFormatted(object);
31      }
32  }