2017-04-12 127 views
0

相關How to compare recursively ignoring given fields using assertJ?AssertJ的`usingComparatorForFields`如何工作?

作爲解決該問題,我試圖鑽機,我不想比較比較領域的比較,並使其返回0

assertThat(service.postComment(12,234,comment)).usingComparatorForFields((a,b)->0,"startDate").isEqualToComparingFieldByFieldRecursively(commentReturned); 

但是,我仍然得到這個例外。

Path to difference: <startDate> 
- expected: <null> 
- actual : <2017-04-12 18:28:06.766> 

一點題外話 - 我不希望比較的startDate,因爲它使用的是舊版java.util.Date這毫秒的過比較檢索當前日期。

usingComparatorForFields是如何工作的。我甚至嘗試了使用isEqualToComparingFieldByField代替isEqualToComparingFieldByFieldRecursively和錯誤仍然存​​在(在相同的情況下,這一個對於需要遞歸比較的情況下失敗。)

回答

0

這看起來像從我所看到的一個bug,什麼版本AssertJ的是你在用嗎?

您是否可以在assertj-core中使用簡單的測試用例來重現錯誤?

+0

我正在使用3.6.2 –

+0

創建了該問題。 [#973](https://github.com/joel-costigliola/assertj-core/issues/973) –