48 lines
1.2 KiB
48 lines
1.2 KiB
package com.jayway.jsonpath; |
|
|
|
import org.junit.Test; |
|
|
|
import java.util.Date; |
|
|
|
import static java.util.Collections.singletonMap; |
|
import static org.assertj.core.api.Assertions.assertThat; |
|
|
|
public class JacksonTest extends BaseTest { |
|
|
|
@Test |
|
public void an_object_can_be_mapped_to_pojo() { |
|
|
|
String json = "{\n" + |
|
" \"foo\" : \"foo\",\n" + |
|
" \"bar\" : 10,\n" + |
|
" \"baz\" : true\n" + |
|
"}"; |
|
|
|
|
|
FooBarBaz fooBarBaz = JsonPath.using(JACKSON_CONFIGURATION).parse(json).read("$", FooBarBaz.class); |
|
|
|
assertThat(fooBarBaz.foo).isEqualTo("foo"); |
|
assertThat(fooBarBaz.bar).isEqualTo(10L); |
|
assertThat(fooBarBaz.baz).isEqualTo(true); |
|
|
|
} |
|
|
|
public static class FooBarBaz { |
|
public String foo; |
|
public Long bar; |
|
public boolean baz; |
|
} |
|
|
|
@Test |
|
public void jackson_converts_dates() { |
|
|
|
Date now = new Date(); |
|
|
|
Object json = singletonMap("date_as_long", now.getTime()); |
|
|
|
Date date = JsonPath.using(JACKSON_CONFIGURATION).parse(json).read("$['date_as_long']", Date.class); |
|
|
|
assertThat(date).isEqualTo(now); |
|
} |
|
|
|
}
|
|
|