### Question:
LocalDateTimeValue extends TemporalValue<LocalDateTime,LocalDateTimeValue> { public static LocalDateTimeValue localDateTime( DateValue date, LocalTimeValue time ) { return new LocalDateTimeValue( LocalDateTime.of( date.temporal(), time.temporal() ) ); } private  LocalDateTimeValue( LocalDateTime value ); static LocalDateTimeValue localDateTime( DateValue date, LocalTimeValue time ); static LocalDateTimeValue localDateTime(
            int year, int month, int day, int hour, int minute, int second, int nanoOfSecond ); static LocalDateTimeValue localDateTime( LocalDateTime value ); static LocalDateTimeValue localDateTime( long epochSecond, long nano ); static LocalDateTime localDateTimeRaw( long epochSecond, long nano ); static LocalDateTimeValue parse( CharSequence text ); static LocalDateTimeValue parse( TextValue text ); static LocalDateTimeValue now( Clock clock ); static LocalDateTimeValue now( Clock clock, String timezone ); static LocalDateTimeValue now( Clock clock, Supplier<ZoneId> defaultZone ); static LocalDateTimeValue build( MapValue map, Supplier<ZoneId> defaultZone ); static LocalDateTimeValue select( AnyValue from, Supplier<ZoneId> defaultZone ); static LocalDateTimeValue truncate(
            TemporalUnit unit,
            TemporalValue input,
            MapValue fields,
            Supplier<ZoneId> defaultZone ); @Override String getTypeName(); @Override boolean supportsTimeZone(); @Override boolean equals( Value other ); @Override void writeTo( ValueWriter<E> writer ); @Override String prettyPrint(); @Override ValueGroup valueGroup(); @Override T map( ValueMapper<T> mapper ); @Override LocalDateTimeValue add( DurationValue duration ); @Override LocalDateTimeValue sub( DurationValue duration ); static final LocalDateTimeValue MIN_VALUE; static final LocalDateTimeValue MAX_VALUE; }### Answer:
@Test void shouldEqualItself() { assertEqual( localDateTime( 2018, 1, 31, 10, 52, 5, 6 ), localDateTime( 2018, 1, 31, 10, 52, 5, 6 ) ); }
@Test void shouldNotEqualOther() { assertNotEqual( localDateTime( 2018, 1, 31, 10, 52, 5, 6 ), localDateTime( 2018, 1, 31, 10, 52, 5, 7 ) ); }