[threeten-dev] Please help to review new test code for java.time.temporal.TemporalAdjuster.adjustInto()

Patrick Zhang patrick.zhang at oracle.com
Tue Feb 19 01:20:03 PST 2013


Hi Team,

The new added test code is used to checking compabality of adjustInto() 
for below 5 classes related with date-time, which have implement 
java.time.temporal.TemporalAdjuster interface.

java.time.LocalDate
java.time.LocalDateTime
java.time.LocalTime
java.time.OffsetDateTime
java.time.OffsetTime

And we have another general data-time object, java.time.ZonedDateTime, 
which do NOT implement TemporalAdjuster interface.
But we still put it in checking list since it supoorts most of data-time 
field.

 From the description for A.adjustInto(B), it just invokes 
A.with(temporalField, value) multi times to copy some temporalField 
value in A to overwrite same temporalField in B. Then A.adjustInto(B) 
should always works well if B contains all temporalField of A.

Since we can get all supported  temporalField list from description of 
isSupported() method, we can conclude below "adjust" matrix easily.

A.adjustInto(B)
	B: LocalDate 	B: LocalDateTime 	B: LocalTime 	B: OffsetDateTime 	B: 
OffsetTime 	B: ZonedDateTime
A: LocalDate 	Y
	Y
	NA
	Y
	NA
	Y
A: LocalDateTime 	NA
	Y
	NA
	Y
	NA
	Y
A: LocalTime 	NA
	Y
	Y
	Y
	Y
	Y
A: OffsetDateTime 	NA
	NA
	NA
	Y
	NA
	Y
A: OffsetTime 	NA
	NA
	NA
	Y
	Y
	Y



Above logic has been implemented in below 4 test classes. I do not touch 
TCKLocalDate.java since it has included similar logic.

test/java/time/tck/java/time/TCKLocalDateTime.java
test/java/time/tck/java/time/TCKLocalTime.java
test/java/time/tck/java/time/TCKOffsetDateTime.java
test/java/time/tck/java/time/TCKOffsetTime.java


For more detail, please check webrev:
http://cr.openjdk.java.net/~pzhang/JSR310/java/time/adjustInto/webrev/

test result:
http://cr.openjdk.java.net/~pzhang/JSR310/java/time/adjustInto/TCKLocalDateTime.jtr
http://cr.openjdk.java.net/~pzhang/JSR310/java/time/adjustInto/TCKLocalTime.jtr
http://cr.openjdk.java.net/~pzhang/JSR310/java/time/adjustInto/TCKOffsetDateTime.jtr
http://cr.openjdk.java.net/~pzhang/JSR310/java/time/adjustInto/TCKOffsetTime.jtr

Regards
Patrick



More information about the threeten-dev mailing list