mirror of
https://github.com/spring-projects/spring-data-elasticsearch.git
synced 2025-05-31 09:12:11 +00:00
parent
cb750e03a9
commit
fa317014a7
@ -17,6 +17,7 @@ package org.springframework.data.elasticsearch.annotations;
|
||||
|
||||
/**
|
||||
* @author Jakub Vavrik
|
||||
* @author Tim te Beek
|
||||
* Values based on reference doc - https://www.elastic.co/guide/reference/mapping/date-format/
|
||||
*/
|
||||
public enum DateFormat {
|
||||
@ -24,8 +25,8 @@ public enum DateFormat {
|
||||
basic_ordinal_date_time_no_millis, basic_time, basic_time_no_millis, basic_t_time, basic_t_time_no_millis,
|
||||
basic_week_date, basic_week_date_time, basic_week_date_time_no_millis, date, date_hour, date_hour_minute,
|
||||
date_hour_minute_second, date_hour_minute_second_fraction, date_hour_minute_second_millis, date_optional_time,
|
||||
date_time, date_time_no_millis, hour, hour_minute, hour_minute_second, hour_minute_second_fraction,
|
||||
hour_minute_second_millis, ordinal_date, ordinal_date_time, ordinal_date_time_no_millis, time, time_no_millis,
|
||||
t_time, t_time_no_millis, week_date, week_date_time, weekDateTimeNoMillis, week_year, weekyearWeek,
|
||||
weekyearWeekDay, year, year_month, year_month_day
|
||||
date_time, date_time_no_millis, epoch_millis, epoch_second, hour, hour_minute, hour_minute_second,
|
||||
hour_minute_second_fraction, hour_minute_second_millis, ordinal_date, ordinal_date_time,
|
||||
ordinal_date_time_no_millis, time, time_no_millis, t_time, t_time_no_millis, week_date, week_date_time,
|
||||
week_date_time_no_millis, weekyear, weekyear_week, weekyear_week_day, year, year_month, year_month_day
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package org.springframework.data.elasticsearch.core.convert;
|
||||
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
@ -16,6 +17,7 @@ import org.springframework.data.elasticsearch.annotations.DateFormat;
|
||||
|
||||
/**
|
||||
* @author Peter-Josef Meisch
|
||||
* @author Tim te Beek
|
||||
*/
|
||||
class ElasticsearchDateConverterTests {
|
||||
|
||||
@ -76,4 +78,24 @@ class ElasticsearchDateConverterTests {
|
||||
|
||||
assertThat(parsed).isEqualTo(legacyDate);
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldParseEpochMillisString() {
|
||||
Instant instant = Instant.ofEpochMilli(1234568901234L);
|
||||
ElasticsearchDateConverter converter = ElasticsearchDateConverter.of(DateFormat.epoch_millis);
|
||||
|
||||
Date parsed = converter.parse("1234568901234");
|
||||
|
||||
assertThat(parsed.toInstant()).isEqualTo(instant);
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldConvertInstantToString() {
|
||||
Instant instant = Instant.ofEpochMilli(1234568901234L);
|
||||
ElasticsearchDateConverter converter = ElasticsearchDateConverter.of(DateFormat.epoch_millis);
|
||||
|
||||
String formatted = converter.format(instant);
|
||||
|
||||
assertThat(formatted).isEqualTo("1234568901234");
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user