Unit Test of Retrofit 2 api call with Mockito

后端 未结 2 1122
不思量自难忘°
不思量自难忘° 2021-01-12 11:18

I need some advices on how to mock a rest api. My application is in MVP architecture.

My interface for API:

public interface MyAPI {

    @GET(\"{cmd         


        
2条回答
  •  情书的邮戳
    2021-01-12 11:51

    You can do it in next way:

    @Test
    public void testLoginWithCorrectUserNameAndPassword() throws Exception {
        // create or mock response object
        when(service.login(anyString(), anyString(), anyString).thenReturn(Observable.just(response));
        mLoginPresenter.login("user@email.com","password");
        verify(view).loginSuccess();
    }
    
    @Test
    public void testLoginWithIncorrectUserNameAndPassword() throws Exception {
        // create or mock response object
        when(service.login(anyString(), anyString(), anyString).thenReturn(Observable.error(new IOException()));
        mLoginPresenter.login("user@email.com","password");
        verify(view).showError(anyString);
    }
    

提交回复
热议问题