????????????
???????AssertJ????Hamcrest???????????????????????????HourRange??????????????????????????????????????????????????????д???????????Щ????????????????AssertJ?????????????????????????????????????????????????????????
?????????????????????????????????????????????????????????Ч??????????????????????????RangeAssert???assertThat()??????

@Test
public void shouldReturnHourlyRanges() throws ParseException {
// given
Date dateFrom = SDF.parse("2012-07-23 12:00");
Date dateTo = SDF.parse("2012-07-23 15:00");
// when
List<Range> ranges = HourlyRange.getRanges(dateFrom?? dateTo);
// then
RangeAssert.assertThat(ranges)
.hasSize(3)
.isSortedAscending()
.hasRange("2012-07-23 12:00"?? "2012-07-23 13:00")
.hasRange("2012-07-23 13:00"?? "2012-07-23 14:00")
.hasRange("2012-07-23 14:00"?? "2012-07-23 15:00");
}
?????????????????С??????????????????????????????Щ????????????????//then??????????????????????????????
???????????????????????????????????????????????????????????????????????????????
????????????????????????????????????ж??????????????????????????????????Щ?????????
?????????????????????????????????????????????????????????????????????????磬????Date??????????????????????????????????????????????????
??????????????????????????????????С???????????????????У????С????????棬???????У?鷽????????????????
????????ж?????????????????????????????????Щ???????????????????????????????????????????????
????????????????????????????AssertJ??AbstractAssert?????????????????????????RangeAssert?????AssertJ??ListAssert????????????????????????????У?????Range?б??List<Range>????
???????????AssertJ?????????????????????????????????????????????????????????????в??????????????????????????????assertThat()?????????????List<Range>??
????public class RangeAssert extends ListAssert<Range> {
????protected RangeAssert(List<Range> ranges) {
????super(ranges);
????}
????public static RangeAssert assertThat(List<Range> ranges) {
????return new RangeAssert(ranges);
????}
???????????????????????漰???????????????????SPASVOС??(021-61079698-8054)?????????????????????????