XmlParserDstu3Test.java 文件源码

java
阅读 17 收藏 0 点赞 0 评论 0

项目:hapi-fhir 作者:
/**
 * Thanks to Alexander Kley!
 */
@Test
public void testParseContainedBinaryResource() {
    byte[] bin = new byte[]{0, 1, 2, 3, 4};
    final Binary binary = new Binary();
    binary.setContentType("PatientConsent").setContent(bin);

    DocumentManifest manifest = new DocumentManifest();
    CodeableConcept cc = new CodeableConcept();
    cc.addCoding().setSystem("mySystem").setCode("PatientDocument");
    manifest.setType(cc);
    manifest.setMasterIdentifier(new Identifier().setSystem("mySystem").setValue(UUID.randomUUID().toString()));
    manifest.addContent().setP(new Reference(binary));
    manifest.setStatus(DocumentReferenceStatus.CURRENT);

    String encoded = ourCtx.newXmlParser().setPrettyPrint(true).encodeResourceToString(manifest);
    ourLog.info(encoded);
    assertThat(encoded, StringContainsInOrder.stringContainsInOrder(Arrays.asList("contained>", "<Binary", "</contained>")));

    DocumentManifest actual = ourCtx.newXmlParser().parseResource(DocumentManifest.class, encoded);
    assertEquals(1, actual.getContained().size());
    assertEquals(1, actual.getContent().size());

    /*
     * If this fails, it's possibe the DocumentManifest structure is wrong: It should be
     *
     * @Child(name = "p", type = {Attachment.class, ValueSet.class}, order=1, min=1, max=1, modifier=false, summary=true)
     */
    assertNotNull(((Reference) actual.getContent().get(0).getP()).getResource());
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号