title: The method andExpect(ResultMatcher) in the type ResultActions is not applicable for the arguments (RequestMatcher)
body: <p>I am working on the <code>Spring MVC + Mockito</code> and I have developed the below code which is causing the error not sure what is wrong. </p>
  
  <pre><code>import static org.mockito.Mockito.verifyNoMoreInteractions;
  import static org.mockito.Mockito.when;
  import static org.springframework.test.web.client.match.MockRestRequestMatchers.content;
  import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
  import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  
  import java.util.Arrays;
  import java.util.List;
  
  import org.junit.Before;
  import org.junit.Test;
  import org.junit.runner.RunWith;
  import org.mockito.InjectMocks;
  import org.mockito.Mock;
  import org.mockito.MockitoAnnotations;
  import org.springframework.http.MediaType;
  import org.springframework.test.context.ContextConfiguration;
  import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  import org.springframework.test.context.web.WebAppConfiguration;
  import org.springframework.test.web.servlet.MockMvc;
  import org.springframework.test.web.servlet.setup.MockMvcBuilders;
  
  import com.memorynotfound.config.WebConfig;
  import com.memorynotfound.controller.UserController;
  import com.memorynotfound.filter.CORSFilter;
  import com.memorynotfound.model.User;
  import com.memorynotfound.service.UserService;
  
  
  @WebAppConfiguration
  @RunWith(SpringJUnit4ClassRunner.class)
  @ContextConfiguration(classes = {WebConfig.class})
  public class UserControllerUnitTest {
  
      private MockMvc mockMvc;
  
      @Mock
      private UserService userService;
  
      @InjectMocks
      private UserController userController;
  
      @Before
      public void init(){
          MockitoAnnotations.initMocks(this);
          mockMvc = MockMvcBuilders.standaloneSetup(userController).addFilters(new CORSFilter()).build();
      }
  
      @Test
      public void test_get_all_success() throws Exception{
          List&lt;User&gt; users = Arrays.asList(
                  new User(1, "Daenerys Targaryen"),
                  new User(2, "John Snow"));
  
          when(userService.getAll()).thenReturn(users);
  
          mockMvc.perform(get("/users"))
          .andExpect(status().isOk())
          .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8_VALUE))
          .andExpect(jsonPath("$", hasSize(2)))
          .andExpect(jsonPath("$[0].id", is(1)))
          .andExpect(jsonPath("$[0].username", is("Daenerys Targaryen")))
          .andExpect(jsonPath("$[1].id", is(2)))
          .andExpect(jsonPath("$[1].username", is("John Snow")));
  
          verify(userService, times(1)).getAll();
          verifyNoMoreInteractions(userService);
      }
  }
  </code></pre>
  
  <p>I suspect, something related to the import statement not working.</p>
  
  <pre><code>@RestController
  @RequestMapping("/users")
  public class UserController {
  
      private final Logger LOG = LoggerFactory.getLogger(UserController.class);
  
      @Autowired
      private UserService userService;
  
      // =========================================== Get All Users ==========================================
  
      @RequestMapping(method = RequestMethod.GET)
      public ResponseEntity&lt;List&lt;User&gt;&gt; getAll() {
          LOG.info("getting all users");
          List&lt;User&gt; users = userService.getAll();
  
          if (users == null || users.isEmpty()){
              LOG.info("no users found");
              return new ResponseEntity&lt;List&lt;User&gt;&gt;(HttpStatus.NO_CONTENT);
          }
  
          return new ResponseEntity&lt;List&lt;User&gt;&gt;(users, HttpStatus.OK);
      }
  }
  </code></pre>
  
  <p>Here is the error for reference:</p>
  
  <pre><code>java.lang.Error: Unresolved compilation problems: 
      The method andExpect(ResultMatcher) in the type ResultActions is not applicable for the arguments (RequestMatcher)
      The method hasSize(int) is undefined for the type UserControllerUnitTest
      The method is(int) is undefined for the type UserControllerUnitTest
      The method is(String) is undefined for the type UserControllerUnitTest
      The method is(int) is undefined for the type UserControllerUnitTest
      The method is(String) is undefined for the type UserControllerUnitTest
      The method times(int) is undefined for the type UserControllerUnitTest
  
      at com.memorynotfound.test.UserControllerUnitTest.test_get_all_success(UserControllerUnitTest.java:61)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
      at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
      at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
      at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
  </code></pre>