|
19 | 19 | import static org.junit.Assert.*;
|
20 | 20 |
|
21 | 21 | import java.math.BigDecimal;
|
| 22 | +import java.time.Instant; |
| 23 | +import java.time.temporal.ChronoUnit; |
22 | 24 | import java.util.Currency;
|
23 | 25 | import java.util.concurrent.atomic.AtomicInteger;
|
24 | 26 | import java.util.concurrent.atomic.AtomicLong;
|
25 | 27 |
|
| 28 | +import org.assertj.core.data.TemporalUnitLessThanOffset; |
| 29 | +import org.bson.BsonTimestamp; |
| 30 | +import org.bson.Document; |
26 | 31 | import org.junit.Test;
|
27 | 32 | import org.springframework.data.geo.Box;
|
28 | 33 | import org.springframework.data.geo.Circle;
|
|
32 | 37 | import org.springframework.data.mongodb.core.convert.MongoConverters.AtomicIntegerToIntegerConverter;
|
33 | 38 | import org.springframework.data.mongodb.core.convert.MongoConverters.AtomicLongToLongConverter;
|
34 | 39 | import org.springframework.data.mongodb.core.convert.MongoConverters.BigDecimalToStringConverter;
|
| 40 | +import org.springframework.data.mongodb.core.convert.MongoConverters.BsonTimestampToInstantConverter; |
35 | 41 | import org.springframework.data.mongodb.core.convert.MongoConverters.CurrencyToStringConverter;
|
36 | 42 | import org.springframework.data.mongodb.core.convert.MongoConverters.IntegerToAtomicIntegerConverter;
|
37 | 43 | import org.springframework.data.mongodb.core.convert.MongoConverters.LongToAtomicLongConverter;
|
38 | 44 | import org.springframework.data.mongodb.core.convert.MongoConverters.StringToBigDecimalConverter;
|
39 | 45 | import org.springframework.data.mongodb.core.convert.MongoConverters.StringToCurrencyConverter;
|
40 | 46 | import org.springframework.data.mongodb.core.geo.Sphere;
|
41 |
| - |
42 |
| -import org.bson.Document; |
| 47 | +import org.springframework.data.mongodb.test.util.Assertions; |
43 | 48 |
|
44 | 49 | /**
|
45 | 50 | * Unit tests for {@link MongoConverters}.
|
@@ -145,4 +150,12 @@ public void convertsLongToAtomicLongCorrectly() {
|
145 | 150 | public void convertsIntegerToAtomicIntegerCorrectly() {
|
146 | 151 | assertThat(IntegerToAtomicIntegerConverter.INSTANCE.convert(100), is(instanceOf(AtomicInteger.class)));
|
147 | 152 | }
|
| 153 | + |
| 154 | + @Test // DATAMONGO-2113 |
| 155 | + public void convertsBsonTimestampToInstantCorrectly() { |
| 156 | + |
| 157 | + Assertions.assertThat(BsonTimestampToInstantConverter.INSTANCE.convert(new BsonTimestamp(6615900307735969796L))) |
| 158 | + .isCloseTo(Instant.ofEpochSecond(1540384327), new TemporalUnitLessThanOffset(100, ChronoUnit.MILLIS)); |
| 159 | + } |
| 160 | + |
148 | 161 | }
|
0 commit comments