2014-11-19 13 views
5

Joker karakterini mockito any() yöntemine aktarmaya çalışıyorum. peşinJoket kartını kullanarak mockito kullanımı

when(gatewayConfigSelector.selectGatewayInfoConfig(any(**!!!!!! HERE I NEED THIS WILDCARD !!!!**)); 
       .thenReturn(...something...); 

Teşekkür: Bu yöntem

selectGatewayInfoConfig(Operation<?> o) 

Ne yapmaya çalışıyorum olmasıdır.

cevap

5

Ne dersin?

when(gatewayConfigSelector.selectGatewayInfoConfig(any(Operation.class)); 
      .thenReturn(...something...); 

Örnek:

@Test 
public void test() { 
    Tester mock = Mockito.mock(Tester.class); 
    Mockito.when(mock.selectGatewayInfoConfig(Mockito.any(Operation.class))).thenReturn("blah"); 

    System.out.println(mock.selectGatewayInfoConfig(null)); 
} 


class Operation<T> { 

} 

class Tester { 

    public String selectGatewayInfoConfig(Operation<?> o) { 
     return "hi"; 
    } 
} 
+0

sorun Test sınıfında yöntem selectGatewayInfoConfig koşul geçerli gereken, test kodu, bir parçası olmayan olmasıdır. – user1554427

+0

Üzgünüm, yorumunuzu anlamıyorum. Alay ettiğin sınıf, genellikle test etmek istediğin şey değil - bununla dalga geçmek istediğin şey. Ders sınıfınızdaysa ve finalde olmadığı sürece yukarıdaki gibi alay edebilmelisiniz. Bu bir geçersiz dönüş tipi yöntem midir? Eğer öyleyse, ne zaman() biraz farklı yazılmalıdır. Aksi takdirde, herhangi bir (Operation.class) eşleştiricisi kullanılmalıdır. –