Skip to content

Commit

Permalink
add testcase for the usage of no-arg constructor for DateTimeDeserial…
Browse files Browse the repository at this point in the history
…izer
  • Loading branch information
Yu Hoi Chau committed Mar 22, 2022
1 parent 5677411 commit 3eacde6
Showing 1 changed file with 40 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package com.fasterxml.jackson.datatype.joda;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.joda.deser.DateTimeDeserializer;
import com.fasterxml.jackson.datatype.joda.ser.DateTimeSerializer;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
import org.junit.Test;

import static org.junit.Assert.assertEquals;


class AClass{
@JsonSerialize(using = DateTimeSerializer.class)
@JsonDeserialize(using = DateTimeDeserializer.class)
private DateTime createdOn = DateTime.now(DateTimeZone.UTC);

public DateTime getCreatedOn() {
return createdOn;
}

public void setCreatedOn(DateTime createdOn) {
this.createdOn = createdOn;
}
}

public class AnnotationTest {

@Test
public void testSomeMethod() throws Exception {
ObjectMapper objectMapper = new ObjectMapper();
AClass initialObject = new AClass();
String serializedObject = objectMapper.writeValueAsString(initialObject);
AClass deserializedObject = objectMapper.readValue(serializedObject, AClass.class);
assertEquals(deserializedObject.getCreatedOn(), initialObject.getCreatedOn());
}

}

0 comments on commit 3eacde6

Please sign in to comment.