Android-модуль для тестирования контента - PullRequest
0 голосов
/ 07 января 2019

Я хочу проверить следующий метод в Android. Я использовал Junit и Mockito.

Как мне издеваться над contentResolver.delete методом?

1 Ответ

0 голосов
/ 07 января 2019

Не думайте, что вам нужно использовать отражение здесь.

Попробуйте

1) Настройка макета ContentResolver

2) Ожидается вызов определенного метода LauncherServerCallback

@Test
public void testDeleteUser() throws Exception
{
    // Arrange
    Launcher launcher = new Launcher();
    Mockito.doReturn(1).when(contentResolver).delete(UserProvider.CONTENT_USER_URI, null, null);

    // Act
    launcher.deleteUser(contentResolver,launcherServerCallback);

   // Assert
   Mockito.verify(launcherServerCallback).onSuccess(Mockito.anyString());
}

Возможно, вам также понадобится добавить это, чтобы запустить двигатель Mockito:

@Before
public void init(){
   MockitoAnnotations.initMocks(this);
}

Совет : вам не следует тестировать частные методы. Поэтому либо попробуйте увеличить видимость, либо перенесите этот код в отдельный класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...