在Neo4j非托管扩展中测试资源时,适配器被忽略

时间:2016-06-15 07:10:43

标签: java neo4j

我已在我的Neo4J托管扩展程序中实施了一个EntityResource类,其中Entity模型和EntityAdapter适配器覆盖了XmlAdapter。部署到服务器时一切正常。该模型使用适配器来封送实体,资源也会相应地做出响应。

然而,在我使用Neo4J线束和Neo4JRule的测试类(下面)中,EntityAdapter被完全忽略,因此我收到了Entity的默认封送版本,其中包含了不需要的值。

@Rule
public Neo4jRule neo4j = new Neo4jRule()
        .withFixture( "CREATE ({name:'test'})" )
        .withExtension( "/test", EntityResource.class );


@Test
public void testRead() {
    // Given
    URI serverURI = neo4j.httpURI();

    String uri = serverURI.toString() + "test/entities/test";
    HTTP.Response response = HTTP.GET( uri );

    // Then it should reply
    assertEquals( response.toString(), 200, response.status() );
    System.out.println( response.toString() );

}

必须正确设置适配器才能在资源中工作,所以我猜测它与测试如何搜索正确的适配器有关。我的班级声明无论如何都在下面

@XmlJavaTypeAdapter( EntityAdapter.class )
public class Entity {

为什么在服务器使用时不使用适配器进行测试?如何解决?

0 个答案:

没有答案