2014-12-22 2 views
0

им пытаются использовать мощности насмешки, чтобы проверить мой классПочему эта мощь не работает, хотя она синтаксически правильная?

это мой класс:

public Basket createBasket(Basket basket) { 
     if (LOGGER.isInfoEnabled()) { 
      LOGGER.info("In BasketInformationServiceImpl.createBasket : [" + basket.toString() + "]"); 
     } 
     try { 
      if (StringUtils.isBlank(basket.getBasketAdditionsAllowedInd())) { 
       basket.setBasketAdditionsAllowedInd("Y"); 
      } 

это мой тест:

public void testCreateBasketCallsSetBasketAdditionsAllowedIndInBasket(){ 
     PowerMockito.mockStatic(StringUtils.class); 
     when(StringUtils.isBlank(mockBasket.getBasketAdditionsAllowedInd())).thenReturn(true); 
     basketInformationServiceImpl.createBasket(mockBasket); 
     verify(mockBasket,times(1)).setBasketAdditionsAllowedInd(anyString()); 
    } 

и ошибка я получаю:

org.mockito.exceptions.missing.WrongTypeOfReturnValue; 
Boolean cannot be returned by getBasketAdditionsAllowedInd() 
getBasketAdditionsAllowedInd() should return string 

Кто-нибудь знает, почему я получаю эту ошибку и как закончить Приходите?

p.s. используя power mock, поскольку StringUtils является статическим классом

ответ

0

Вы издевались над mockBasket.getBasketAdditionsAllowedInd где-нибудь еще?

Если да, попробуйте разделить линию нарушения на две части.

String allowedInd = mockBasket.getBasketAdditionsAllowedInd(); 
when(StringUtils.isBlank(allowedInd)).thenReturn(true); 

Почему вы издеваетесь над статическим классом?

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