package org.phenopackets.schema.v1; import com.google.protobuf.util.JsonFormat; import org.junit.jupiter.api.Test; import org.phenopackets.schema.v1.examples.TestExamples; import org.phenopackets.schema.v1.io.FormatMapper; import java.io.IOException; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.MatcherAssert.assertThat; /** * @author Jules Jacobsen <[email protected]> */ public class FamilyTest { @Test void printFamilyAsYaml() throws IOException { Family family = TestExamples.rareDiseaseFamily(); String json = JsonFormat.printer().print(family); System.out.println(FormatMapper.jsonToYaml(json)); } @Test void roundTrippingFamily() throws IOException { Family original = TestExamples.rareDiseaseFamily(); String json = JsonFormat.printer().print(original); String asYaml = FormatMapper.jsonToYaml(json); System.out.println(asYaml); System.out.println(json); String asJson = FormatMapper.yamlToJson(asYaml); System.out.println(asJson); Family.Builder familyBuilder = Family.newBuilder(); JsonFormat.parser().merge(asJson, familyBuilder); Family fromJson = familyBuilder.build(); //Ta-da! assertThat(fromJson, equalTo(original)); } }