public static void TranspileToDataSaveFileCheck(string input, string expectedOutput) { var definitionsRepository = new DefinitionsRepository(); var parser = new SphereSharp.Sphere99.Parser(); var parsingOutput = parser.ParseSaveFile(input); if (parsingOutput.Errors.Any()) { Assert.Fail(parsingOutput.GetErrorsText()); } new DefinitionsCollector(definitionsRepository).Visit(parsingOutput.Tree); var transpiler = new SphereSharp.Sphere99.Sphere56Transpiler.WorldTranspiler(definitionsRepository); var result = transpiler.Transpile(parsingOutput.Tree); result.Data.Trim().Should().Be(expectedOutput.Trim()); }
private static void TranspileCheck(string input, string expectedOutput, Func<string, SphereSharp.Sphere99.Parser, ParsingResult> parseFunc) { var definitionsRepository = new DefinitionsRepository(); var parser = new SphereSharp.Sphere99.Parser(); var parsingOutput = parseFunc(input, parser); if (parsingOutput.Errors.Any()) { Assert.Fail(parsingOutput.GetErrorsText()); } new DefinitionsCollector(definitionsRepository).Visit(parsingOutput.Tree); var transpiler = new SphereSharp.Sphere99.Sphere56TranspilerVisitor(definitionsRepository); transpiler.Visit(parsingOutput.Tree); transpiler.Output.Trim().Should().Be(expectedOutput.Trim()); }