Example #1
0
  void assertRoundTrip(String ednText) {
    Parser parser;
    Parseable pbr;
    pbr = Parsers.newParseable(ednText);
    parser = Parsers.newParser(Parsers.defaultConfiguration());
    Object originalParsedValue = parser.nextValue(pbr);

    StringWriter sw = new StringWriter();
    Printer ew = Printers.newPrinter(Printers.defaultPrinterProtocol(), sw);
    ew.printValue(originalParsedValue);
    ew.close();

    pbr = Parsers.newParseable(sw.toString());
    parser = Parsers.newParser(Parsers.defaultConfiguration());
    Object secondGenerationParsedValue = parser.nextValue(pbr);
    assertEquals(
        "'" + ednText + "' => '" + sw.toString() + "' did not round-trip.",
        originalParsedValue,
        secondGenerationParsedValue);
    assertEquals(Parser.END_OF_INPUT, parser.nextValue(pbr));
  }