public static IEnumerable <ITestCaseData> GetCommonMarkSpecTestCases() { var testCases = new List <ITestCaseData> (); foreach (var example in CommonMarkSpecReader.ExamplesFromGitSpec().Parse()) { testCases.Add(new TestCaseData(example) { TestName = "commonmark-spec-" + example.Title }); } return(testCases); }
public void SemanticRoundTripFullSpec() { const int passes = 100; var markdownParseDuration = TimeSpan.Zero; var htmlFormatDuration = TimeSpan.Zero; var markdownFormatDuration = TimeSpan.Zero; for (int i = 0; i < passes; i++) { TeePass referencePass; using (var reader = CommonMarkSpecReader.FromGitSpec()) referencePass = new TeePass(reader.ReadToEnd()); var roundtripPass = new TeePass(referencePass.Block); roundtripPass.Html.ShouldEqual(referencePass.Html); markdownParseDuration += referencePass.ParseTime; htmlFormatDuration += referencePass.FormatTime; markdownFormatDuration += roundtripPass.FormatTime; } Action <string, TimeSpan> log = (label, duration) => Console.WriteLine( " {0}: {1}s total over {2} passes ({3}s average)", label, duration.TotalSeconds, passes, duration.TotalSeconds / passes); Console.WriteLine(); log(" Markdown Parse", markdownParseDuration); log(" HTML Format", htmlFormatDuration); log("Markdown Format", markdownFormatDuration); Console.WriteLine(); }