expected
과 actual
이 서로 같다고 주장하고 싶습니다. 둘 다 null
이거나 공백 (""
) 인 경우 - 즉 null
은 비어 있음을 의미합니다.AssertJ에서 평등 또는 둘 모두를 확인하는 방법은 무엇입니까?
.withComparator(...).isEqualTo(expected)
null
는 AspectJ의에 의해 이전에 선택되어 있기 때문에, 작동하지 않습니다
@Given("^data is \"([^\"]*)\"$")
void theDataIs(String arg) {
assertThat(msg.getData())
.usingComparator(blankOkComperator).isEqualTo(arg);
}
내 비교기는 코 틀린 것입니다,하지만 당신은 아이디어를 얻을 : 만하여 검사를 구현하는 관리
object blankOkComperator : Comparator<String> {
override fun compare(o1: String?, o2: String?): Int {
if(StringUtils.isBlank(o1) && StringUtils.isBlank(o2)) return 0
if(StringUtils.isBlank(o1)) return -1
if(StringUtils.isBlank(o2)) return 1
return o1!!.compareTo(o2!!)
}
}
을 AssertJ의 Condition<String>
을 재정의하지만 나에게 매우 어설프게 보이지는 않습니다.
@Given("^data is \"([^\"]*)\"$")
void theDataIs(String arg) {
assertThat(msg.getDate())
.is(new EqualToOrBothBlank(arg));
}
,210
다시, 도우미 코 틀린입니다,하지만 당신은 내가 무슨 뜻인지 알고 수표를 구현하기 위해 AspectJ를-방법은
class EqualToOrBothBlank(val expected: String) : Condition<String?>() {
override fun matches(actual: String?): Boolean {
if(StringUtils.isBlank(actual) && StringUtils.isBlank(expected)) return true;
return StringUtils.equals(actual, expected)
}
}
있습니까?
"측면을 ","assert "... 고정. – towi