testcase "parse data from a file" { success Test$execute() } concrete Test { @type execute () -> () } define Test { execute () { TestData data <- TestData$parseFrom(loadTestData()).getValue() if (data.getName() != "example data") { fail(data.getName()) } if (data.getDescription() != "THIS_IS_A_TOKEN") { fail(data.getDescription()) } if (data.getBoolean() != false) { fail(data.getBoolean()) } } @type loadTestData () -> (String) loadTestData () { scoped { RawFileReader reader <- RawFileReader$open($ExprLookup[MODULE_PATH]$ + "/test-data.txt") } cleanup { \ reader.freeResource() } in return TextReader$readAll(reader) } }