content: package com.alibaba.fastjson.support.jaxrs;
  
  
  import org.glassfish.jersey.client.ClientConfig;
  import org.glassfish.jersey.server.ResourceConfig;
  import org.glassfish.jersey.test.JerseyTest;
  import org.glassfish.jersey.test.TestProperties;
  import org.junit.Test;
  
  import javax.ws.rs.GET;
  import javax.ws.rs.Path;
  import javax.ws.rs.core.Application;
  import java.util.Date;
  
  import static org.junit.Assert.*;
  
  public class TestIssue885 extends JerseyTest {
  
      @Path("user")
      public static class UserResource {
          @GET
          public User getUser() {
              User user = new User();
              user.setId(12345L);
              user.setName("smallnest");
              user.setCreatedOn(new Date());
              return user;
          }
      }
  
      @Override
      protected void configureClient(ClientConfig config) {
          config.register(new FastJsonFeature()).register(FastJsonProvider.class);
      }
  
      @Override
      protected Application configure() {
          enable(TestProperties.LOG_TRAFFIC);
          enable(TestProperties.DUMP_ENTITY);
  
          ResourceConfig config = new ResourceConfig();
          //config.register(new FastJsonFeature()).register(FastJsonProvider.class);
          config.register(new FastJsonFeature()).register(new FastJsonProvider().setPretty(true));
          config.packages("com.alibaba.fastjson");
          return config;
      }
  
      @Test
      public void testWriteTo() {
          final String user = target("user").request().accept("application/json").get(String.class);
          // {"createdOn":1412036891919,"id":12345,"name":"smallnest"}]
          assertTrue(user.indexOf("createdOn") > 0);
          assertTrue(user.indexOf("\"id\":12345") > 0);
          assertTrue(user.indexOf("\"name\":\"smallnest\"") > 0);
      }
  
      @Test
      public void testWriteToWithPretty() {
          //System.out.println("@@@@@Test Pretty");
          final String user = target("user").queryParam("pretty", "true").request().accept("application/json").get(String.class);
          // {"createdOn":1412036891919,"id":12345,"name":"smallnest"}]
          assertTrue(user.indexOf("createdOn") > 0);
          assertTrue(user.indexOf("\"id\":12345") > 0);
          assertTrue(user.indexOf("\"name\":\"smallnest\"") > 0);
          //response does not contain a return character
          //assertTrue(user.indexOf("\n\t") > 0);
  
      }
  
      @Test
      public void testReadFrom() {
          final User user = target("user").request().accept("application/json").get(User.class);
          assertNotNull(user);
          assertNotNull(user.getCreatedOn());
          assertEquals(user.getId().longValue(), 12345L);
          assertEquals(user.getName(), "smallnest");
      }
  
  }
  