반응형
클래스의 매개 변수에 전달 된 null을 일치시키는 방법 Mockito와 함께
다음과 같은 방법이 있습니다.
public <T> method(String s, Class<T> t) {...}
null
다른 매개 변수에 대해 매처를 사용할 때 두 번째 인수에 전달되는지 확인해야한다는 점 은 다음과 같습니다.
@SuppressWarnings("unchecked")
verify(client).method(eq("String"), any(Class.class));
그러나 더 나은 방법이 있습니까 (경고를 억제하지 않고)? T
다른 메서드의 반환 유형을 나타내며, 때로는 void
이러한 경우 null
에 전달됩니다.
Mockito에는 클래스 이름을 전달할 수 있는 isNull
matcher 가 있습니다. 따라서 다른 매처와 함께 사용해야하는 경우 올바른 방법은
verify(client).method(eq("String"),isNull(Class<?>.class));
이것은 이제 더 이상 사용되지 않습니다. 새로운 방법은 아래 답변을 참조하십시오-https: //stackoverflow.com/a/41250852/1348
David Wallace의 답변 업데이트 :
2016-12, Java 8 및 Mockito 2.3,
public static <T> T isNull(Class<T> clazz)
더 이상 사용되지 않으며 Mockito 3.0에서 제거됩니다.
사용하다
public static <T> T isNull()
대신
이것은 나를 위해 작동합니다.
verify(client).method(eq("String"), eq((Class<?>) null));
반응형
'Development Tip' 카테고리의 다른 글
Rails-모범 사례 : 종속적 인 has_one 관계를 만드는 방법 (0) | 2020.10.20 |
---|---|
Android : 하단의 버튼과 위의 목록보기를 어떻게 정렬 할 수 있습니까? (0) | 2020.10.20 |
Oracle에서 사용자에게 부여 된 권한 및 역할을 찾는 방법은 무엇입니까? (0) | 2020.10.20 |
Github가 저장소를 잘못된 언어로 변경합니다. (0) | 2020.10.20 |
클래스의 모든 메서드가 먼저 다른 메서드를 호출하는지 확인하는 방법은 무엇입니까? (0) | 2020.10.20 |