2016-12-20 2 views
0

Я некоторое время боролся с этим, а в качестве новичка Java и Mockito я надеюсь, что это такая же глупая ошибка.Mockito thenReturn возвращается

У меня есть метод, который выглядит как

public WrapperObject<Void> myMethod(...) { 
    WrapperObject<Object1> o1 = getObject1FromWebServiceAndWrapIt(buildVar1(a)); 

    ... 

    private buildVar1(a) { 
     return someVar; 
    } 
} 

@Test 
public void testMyMethod() throws Exception { 
    Mockito.when(getObject1FromWebServiceAndWrapIt(MOCK_VAR1, MOCK_VAR2)).thenReturn(WrapperObject.of(MOCK_o1)); 
    ... 
} 

Даже в этом простой случае, когда я ожидаю o1 иметь значение MOCK_o1, вместо этого он решает, как null.

Я пробовал шаблон Mockito.doReturn().when(), который также не возвращает ничего, кроме нулевого.

Прошу прощения за пример короткого кода, но он находится в середине кучи мусора, и было бы сложно просто вставить все это здесь. Кто-нибудь узнает какие-то ужасные шаблоны?

+1

Выполняют ли ваши объекты правильно «равные»? – Mureinik

+0

@Mureinik да, делаю. –

+0

Не могли бы вы разместить полный пример, чтобы я мог понять проблему? Текущий код выглядит так, будто вы не передаете mock-объект в Mockito.when(). –

ответ

0

Вопрос был плохо сформулирован, однако ответ скорее не зависит от вопроса.

Вопрос закончили тем, что делать с тем, что Mockito.any(), делает не издеваться varargs соответствующим образом. Я использовал метод, который требовал макета объекта varargs.

Вы можете исправить это, используя Mockito.anyVararg().

Смежные вопросы