Kotest Kotlinx Datetime マッチャー(Kotlinx Datetime Matchers)

Kotlinx Datetime マッチャーについて説明する。

Kotlinx Datetime ライブラリ向けのマッチャーは、kotest-assertions-kotlinx-time モジュールで提供される。

LocalDate 説明
date.shouldHaveSameYearAs(otherDate) 日付が指定した日付と同じ年であることを確認する。
date.shouldHaveSameMonthAs(otherDate) 日付が指定した日付と同じ月であることを確認する。
date.shouldHaveSameDayAs(otherDate) 日付が指定した日付と同じ月の日であることを確認する。
date.shouldBeBefore(otherDate) 日付が指定した日付より前であることを確認する。
date.shouldBeAfter(otherDate) 日付が指定した日付より後であることを確認する。
date.shouldBeWithin(period, otherDate) 日付が指定した日付の期間内にあることを確認する。
date.shouldBeWithin(duration, otherDate) 日付が指定した日付の期間内にあることを確認する。
date.shouldBeBetween(firstDate, secondDate) 日付が firstDatesecondDate の間にあることを確認する。
date.shouldHaveYear(year) 日付の年が正しいことを確認する。
date.shouldHaveMonth(month) 日付の月が正しいことを確認する。
date.shouldHaveDayOfYear(day) 日付が正確な年内日を持つことを確認する。
date.shouldHaveDayOfMonth(day) 日付の日が正しいことを確認する。
date.shouldHaveDayOfWeek(day) 日付の曜日が正しいことを確認する。
date.shouldHaveHour(hour) 日付の時が正しいことを確認する。
date.shouldHaveMinute(Minute) 日付の分が正しいことを確認する。
date.shouldHaveSecond(second) 日付の秒が正しいことを確認する。
date.shouldHaveNano(nano) 日付のナノ秒が正しいことを確認する。
LocalDateTime 説明
time.shouldHaveSameHoursAs(otherTime) 時刻が指定した時刻と同じ時間を持つことを確認する。
time.shouldHaveSameMinutesAs(otherTime) 時刻が指定した時刻と同じ分を持つことを確認する。
time.shouldHaveSameSecondsAs(otherTime) 時刻が指定した時刻と同じ秒を持つことを確認する。
time.shouldHaveSameNanosAs(otherTime) 時刻が指定した時刻と同じナノ秒を持つことを確認する。
time.shouldBeBefore(otherTime) 時刻が指定した時刻より前であることを確認する。
time.shouldBeAfter(otherTime) 時刻が指定した時刻より後であることを確認する。
time.shouldBeBetween(firstTime, secondTime) 時刻が firstTimesecondTime の間にあることを確認する。
Instant 説明
instant.shouldBeAfter(anotherInstant) インスタントが anotherInstant より後に発生することを確認する。
instant.shouldBeBefore(anotherInstant) インスタントが anotherInstant より前にあることを確認する。
instant.shouldBeBetween(fromInstant, toInstant) インスタントが fromInstanttoInstant の間にあることを確認する。

参照