如何断言将比较器用于不可比的实际值?

时间:2019-12-30 13:40:24

标签: assertj

我有一个实际的T extends TemporalAccessor,而不是& Comparable<? super T>

现在,我想使用Comparator<? super T>的一个实例来断言实际值在指定的期望值之前或之后。

abstract class SomeType<T extends TemporalAccessor> {

    TemporalAccessor createdAt;
}

因为TemporalType不是Comparable本身,我能做到这一点。

abstract class SomeAssert<
        SELF extends SomeAssert<SELF, TemporalType>,
        ACTUAL extends SomeType<TemporalType>,
        TemporalType extends TemporalAccessor> {

    public SELF createdAfter(final TemporalType min,
                             final Comparatlr<? super TemporalType> comparator) {
        return isNotNull()
                .satisfies(
                        v -> assertThat(v.getCreatedDate())
                                .isNotNull()
                                .satisfies(d -> assertThat(comparator.compare(d, min))
                                                .isNotNegative())

                );
    }
}

我该怎么做isGreaterThanOrEqualTo或其他任何事情?

0 个答案:

没有答案