Merge pull request dart-lang/markdown#117 from dart-lang/more_details
Be more clear in stats about a successful test
diff --git a/pkgs/markdown/tool/common_mark_stats.dart b/pkgs/markdown/tool/common_mark_stats.dart
index 39e05d1..d25f4fa 100644
--- a/pkgs/markdown/tool/common_mark_stats.dart
+++ b/pkgs/markdown/tool/common_mark_stats.dart
@@ -62,51 +62,18 @@
var sections = _loadCommonMarkSections();
- var scores = new SplayTreeMap<String, SplayTreeMap<int, bool>>(
+ var scores = new SplayTreeMap<String, SplayTreeMap<int, CompareLevel>>(
compareAsciiLowerCaseNatural);
- String indent(String s) => s.splitMapJoin('\n', onNonMatch: (n) => ' $n');
-
- printVerboseFailure(
- String message, CommonMarkTestCase test, String expected, String actual) {
- if (!verbose) {
- return;
- }
-
- print('$message: http://spec.commonmark.org/0.26/#example-${test.example}');
- print('input:');
- print(indent(test.markdown));
- print('expected:');
- print(indent(expected));
- print('actual:');
- print(indent(actual));
- print('-----------------------');
- }
-
sections.forEach((section, examples) {
if (specifiedSection != null && section != specifiedSection) {
return;
}
for (var e in examples) {
- var output;
- var nestedMap =
- scores.putIfAbsent(section, () => new SplayTreeMap<int, bool>());
- var expected = parseFragment(e.html);
+ var nestedMap = scores.putIfAbsent(
+ section, () => new SplayTreeMap<int, CompareLevel>());
- try {
- output = markdownToHtml(e.markdown);
- } catch (exc, stackTrace) {
- nestedMap[e.example] = false;
- printVerboseFailure(
- 'ERROR', e, expected.outerHtml, 'Thrown: $exc\n$stackTrace');
- continue;
- }
-
- var actual = parseFragment(output);
- nestedMap[e.example] = compareHtml(expected.children, actual.children);
- if (!nestedMap[e.example]) {
- printVerboseFailure('FAIL', e, expected.outerHtml, actual.outerHtml);
- }
+ nestedMap[e.example] = _compareResult(e, verbose);
}
});
@@ -119,7 +86,67 @@
}
}
+CompareLevel _compareResult(CommonMarkTestCase expected, bool verboseFail) {
+ String output;
+ try {
+ output = markdownToHtml(expected.markdown);
+ } catch (err, stackTrace) {
+ if (verboseFail) {
+ printVerboseFailure(
+ 'ERROR', expected, expected.html, 'Thrown: $err\n$stackTrace');
+ }
+
+ return CompareLevel.error;
+ }
+
+ if (expected.html == output) {
+ return CompareLevel.strict;
+ }
+
+ var expectedParsed = parseFragment(expected.html);
+ var actual = parseFragment(output);
+
+ var looseMatch = _compareHtml(expectedParsed.children, actual.children);
+
+ if (!looseMatch && verboseFail) {
+ printVerboseFailure(
+ 'FAIL', expected, expectedParsed.outerHtml, actual.outerHtml);
+ }
+
+ return looseMatch ? CompareLevel.loose : CompareLevel.fail;
+}
+
+String indent(String s) => s.splitMapJoin('\n', onNonMatch: (n) => ' $n');
+
+void printVerboseFailure(
+ String message, CommonMarkTestCase test, String expected, String actual) {
+ print('$message: http://spec.commonmark.org/0.26/#example-${test.example}');
+ print('input:');
+ print(indent(test.markdown));
+ print('expected:');
+ print(indent(expected));
+ print('actual:');
+ print(indent(actual));
+ print('-----------------------');
+}
+
+enum CompareLevel { strict, loose, fail, error }
+
_convert(obj) {
+ if (obj is CompareLevel) {
+ switch (obj) {
+ case CompareLevel.strict:
+ return 'strict';
+ case CompareLevel.error:
+ return 'error';
+ case CompareLevel.fail:
+ return 'fail';
+ case CompareLevel.loose:
+ return 'loose';
+ default:
+ throw 'huh?';
+ }
+ }
if (obj is Map) {
var map = {};
obj.forEach((k, v) {
@@ -131,7 +158,7 @@
return obj;
}
-Future _printRaw(scores, bool updateFiles) async {
+Future _printRaw(Map scores, bool updateFiles) async {
IOSink sink;
if (updateFiles) {
var path = p.join(_currentDir, 'common_mark_stats.json');
@@ -155,7 +182,8 @@
await sink.close();
}
-Future _printFriendly(SplayTreeMap<String, SplayTreeMap<int, bool>> scores,
+Future _printFriendly(
+ SplayTreeMap<String, SplayTreeMap<int, CompareLevel>> scores,
bool updateFiles) async {
const countWidth = 4;
@@ -172,11 +200,17 @@
sink = stdout;
}
- scores.forEach((section, map) {
+ scores.forEach((section, Map<int, CompareLevel> map) {
var total = map.values.length;
totalExamples += total;
- var sectionValidCount = map.values.where((val) => val).length;
+ var sectionStrictCount =
+ map.values.where((val) => val == CompareLevel.strict).length;
+
+ var sectionLooseCount =
+ map.values.where((val) => val == CompareLevel.loose).length;
+
+ var sectionValidCount = sectionStrictCount + sectionLooseCount;
totalValid += sectionValidCount;
@@ -198,7 +232,8 @@
}
/// Compare two DOM trees for equality.
-bool compareHtml(List<Element> expectedElements, List<Element> actualElements) {
+bool _compareHtml(
+ List<Element> expectedElements, List<Element> actualElements) {
if (expectedElements.length != actualElements.length) {
return false;
}
@@ -239,7 +274,7 @@
}
}
- var childrenEqual = compareHtml(expected.children, actual.children);
+ var childrenEqual = _compareHtml(expected.children, actual.children);
if (!childrenEqual) {
return false;
diff --git a/pkgs/markdown/tool/common_mark_stats.json b/pkgs/markdown/tool/common_mark_stats.json
index a020258..16c6480 100644
--- a/pkgs/markdown/tool/common_mark_stats.json
+++ b/pkgs/markdown/tool/common_mark_stats.json
@@ -1,673 +1,673 @@
{
"ATX headings": {
- "32": true,
- "33": true,
- "34": true,
- "35": true,
- "36": true,
- "37": true,
- "38": false,
- "39": true,
- "40": true,
- "41": false,
- "42": true,
- "43": true,
- "44": true,
- "45": true,
- "46": true,
- "47": true,
- "48": true,
- "49": false
+ "32": "strict",
+ "33": "strict",
+ "34": "strict",
+ "35": "strict",
+ "36": "strict",
+ "37": "strict",
+ "38": "fail",
+ "39": "strict",
+ "40": "loose",
+ "41": "fail",
+ "42": "strict",
+ "43": "loose",
+ "44": "strict",
+ "45": "loose",
+ "46": "loose",
+ "47": "strict",
+ "48": "strict",
+ "49": "fail"
},
"Autolinks": {
- "560": true,
- "561": true,
- "562": false,
- "563": false,
- "564": false,
- "565": false,
- "566": true,
- "567": false,
- "568": false,
- "569": false,
- "570": false,
- "571": false,
- "572": true,
- "573": true,
- "574": true,
- "575": true,
- "576": true,
- "577": true,
- "578": true
+ "560": "strict",
+ "561": "loose",
+ "562": "fail",
+ "563": "fail",
+ "564": "fail",
+ "565": "fail",
+ "566": "strict",
+ "567": "fail",
+ "568": "fail",
+ "569": "fail",
+ "570": "fail",
+ "571": "fail",
+ "572": "loose",
+ "573": "loose",
+ "574": "loose",
+ "575": "loose",
+ "576": "loose",
+ "577": "strict",
+ "578": "strict"
},
"Backslash escapes": {
- "288": true,
- "289": true,
- "290": false,
- "291": true,
- "292": true,
- "293": true,
- "294": true,
- "295": true,
- "296": false,
- "297": true,
- "298": false,
- "299": false,
- "300": false
+ "288": "loose",
+ "289": "strict",
+ "290": "fail",
+ "291": "strict",
+ "292": "strict",
+ "293": "strict",
+ "294": "strict",
+ "295": "strict",
+ "296": "fail",
+ "297": "strict",
+ "298": "fail",
+ "299": "fail",
+ "300": "fail"
},
"Blank lines": {
- "188": true
+ "188": "strict"
},
"Block quotes": {
- "189": true,
- "190": true,
- "191": true,
- "192": true,
- "193": true,
- "194": true,
- "195": true,
- "196": true,
- "197": true,
- "198": false,
- "199": false,
- "200": true,
- "201": true,
- "202": true,
- "203": true,
- "204": true,
- "205": true,
- "206": true,
- "207": true,
- "208": true,
- "209": true,
- "210": false,
- "211": true,
- "212": true,
- "213": true
+ "189": "loose",
+ "190": "loose",
+ "191": "loose",
+ "192": "strict",
+ "193": "loose",
+ "194": "loose",
+ "195": "loose",
+ "196": "loose",
+ "197": "loose",
+ "198": "fail",
+ "199": "fail",
+ "200": "loose",
+ "201": "loose",
+ "202": "loose",
+ "203": "loose",
+ "204": "loose",
+ "205": "loose",
+ "206": "loose",
+ "207": "loose",
+ "208": "loose",
+ "209": "loose",
+ "210": "fail",
+ "211": "loose",
+ "212": "loose",
+ "213": "loose"
},
"Code spans": {
- "313": true,
- "314": true,
- "315": true,
- "316": true,
- "317": true,
- "318": true,
- "319": true,
- "320": true,
- "321": true,
- "322": true,
- "323": true,
- "324": true,
- "325": false,
- "326": false,
- "327": true
+ "313": "strict",
+ "314": "strict",
+ "315": "strict",
+ "316": "strict",
+ "317": "loose",
+ "318": "strict",
+ "319": "strict",
+ "320": "strict",
+ "321": "strict",
+ "322": "loose",
+ "323": "strict",
+ "324": "loose",
+ "325": "fail",
+ "326": "fail",
+ "327": "strict"
},
"Emphasis and strong emphasis": {
- "328": true,
- "329": true,
- "330": false,
- "331": false,
- "332": true,
- "333": true,
- "334": true,
- "335": false,
- "336": true,
- "337": true,
- "338": true,
- "339": false,
- "340": true,
- "341": true,
- "342": true,
- "343": false,
- "344": false,
- "345": false,
- "346": false,
- "347": true,
- "348": false,
- "349": true,
- "350": true,
- "351": true,
- "352": false,
- "353": true,
- "354": true,
- "355": true,
- "356": false,
- "357": false,
- "358": true,
- "359": true,
- "360": false,
- "361": false,
- "362": true,
- "363": true,
- "364": true,
- "365": false,
- "366": true,
- "367": true,
- "368": false,
- "369": false,
- "370": false,
- "371": true,
- "372": true,
- "373": true,
- "374": false,
- "375": true,
- "376": true,
- "377": true,
- "378": false,
- "379": true,
- "380": true,
- "381": true,
- "382": true,
- "383": true,
- "384": true,
- "385": false,
- "386": false,
- "387": false,
- "388": false,
- "389": false,
- "390": false,
- "391": false,
- "392": false,
- "393": false,
- "394": false,
- "395": true,
- "396": false,
- "397": true,
- "398": true,
- "399": true,
- "400": true,
- "401": false,
- "402": false,
- "403": true,
- "404": true,
- "405": true,
- "406": true,
- "407": false,
- "408": true,
- "409": true,
- "410": false,
- "411": true,
- "412": true,
- "413": true,
- "414": false,
- "415": true,
- "416": true,
- "417": false,
- "418": true,
- "419": false,
- "420": false,
- "421": true,
- "422": true,
- "423": true,
- "424": true,
- "425": true,
- "426": false,
- "427": true,
- "428": true,
- "429": false,
- "430": true,
- "431": true,
- "432": false,
- "433": true,
- "434": true,
- "435": true,
- "436": true,
- "437": true,
- "438": true,
- "439": false,
- "440": false,
- "441": false,
- "442": true,
- "443": false,
- "444": true,
- "445": false,
- "446": true,
- "447": true,
- "448": false,
- "449": false,
- "450": true,
- "451": true,
- "452": true,
- "453": true,
- "454": true,
- "455": true,
- "456": true
+ "328": "strict",
+ "329": "strict",
+ "330": "fail",
+ "331": "fail",
+ "332": "strict",
+ "333": "strict",
+ "334": "strict",
+ "335": "fail",
+ "336": "loose",
+ "337": "strict",
+ "338": "strict",
+ "339": "fail",
+ "340": "loose",
+ "341": "strict",
+ "342": "strict",
+ "343": "fail",
+ "344": "fail",
+ "345": "fail",
+ "346": "fail",
+ "347": "strict",
+ "348": "fail",
+ "349": "strict",
+ "350": "strict",
+ "351": "strict",
+ "352": "fail",
+ "353": "strict",
+ "354": "strict",
+ "355": "strict",
+ "356": "fail",
+ "357": "fail",
+ "358": "strict",
+ "359": "strict",
+ "360": "fail",
+ "361": "fail",
+ "362": "loose",
+ "363": "strict",
+ "364": "strict",
+ "365": "fail",
+ "366": "strict",
+ "367": "strict",
+ "368": "fail",
+ "369": "fail",
+ "370": "fail",
+ "371": "strict",
+ "372": "loose",
+ "373": "strict",
+ "374": "fail",
+ "375": "strict",
+ "376": "strict",
+ "377": "strict",
+ "378": "fail",
+ "379": "strict",
+ "380": "strict",
+ "381": "strict",
+ "382": "strict",
+ "383": "strict",
+ "384": "strict",
+ "385": "fail",
+ "386": "fail",
+ "387": "fail",
+ "388": "fail",
+ "389": "fail",
+ "390": "fail",
+ "391": "fail",
+ "392": "fail",
+ "393": "fail",
+ "394": "fail",
+ "395": "strict",
+ "396": "fail",
+ "397": "strict",
+ "398": "strict",
+ "399": "strict",
+ "400": "strict",
+ "401": "fail",
+ "402": "fail",
+ "403": "strict",
+ "404": "strict",
+ "405": "strict",
+ "406": "strict",
+ "407": "fail",
+ "408": "strict",
+ "409": "strict",
+ "410": "fail",
+ "411": "strict",
+ "412": "strict",
+ "413": "strict",
+ "414": "fail",
+ "415": "strict",
+ "416": "strict",
+ "417": "fail",
+ "418": "strict",
+ "419": "fail",
+ "420": "fail",
+ "421": "strict",
+ "422": "strict",
+ "423": "strict",
+ "424": "strict",
+ "425": "strict",
+ "426": "fail",
+ "427": "strict",
+ "428": "strict",
+ "429": "fail",
+ "430": "loose",
+ "431": "loose",
+ "432": "fail",
+ "433": "loose",
+ "434": "loose",
+ "435": "strict",
+ "436": "strict",
+ "437": "strict",
+ "438": "strict",
+ "439": "fail",
+ "440": "fail",
+ "441": "fail",
+ "442": "strict",
+ "443": "fail",
+ "444": "strict",
+ "445": "fail",
+ "446": "loose",
+ "447": "loose",
+ "448": "fail",
+ "449": "fail",
+ "450": "strict",
+ "451": "strict",
+ "452": "strict",
+ "453": "strict",
+ "454": "strict",
+ "455": "strict",
+ "456": "strict"
},
"Entity and numeric character references": {
- "301": true,
- "302": true,
- "303": true,
- "304": true,
- "305": true,
- "306": true,
- "307": true,
- "308": false,
- "309": false,
- "310": true,
- "311": true,
- "312": true
+ "301": "loose",
+ "302": "loose",
+ "303": "loose",
+ "304": "loose",
+ "305": "strict",
+ "306": "loose",
+ "307": "strict",
+ "308": "fail",
+ "309": "fail",
+ "310": "loose",
+ "311": "strict",
+ "312": "strict"
},
"Fenced code blocks": {
- "88": true,
- "89": true,
- "90": true,
- "91": true,
- "92": true,
- "93": true,
- "94": true,
- "95": true,
- "96": true,
- "97": true,
- "98": true,
- "99": true,
- "100": true,
- "101": true,
- "102": true,
- "103": true,
- "104": true,
- "105": true,
- "106": false,
- "107": true,
- "108": true,
- "109": true,
- "110": true,
- "111": true,
- "112": true,
- "113": false,
- "114": false
+ "88": "strict",
+ "89": "strict",
+ "90": "strict",
+ "91": "strict",
+ "92": "strict",
+ "93": "strict",
+ "94": "loose",
+ "95": "loose",
+ "96": "loose",
+ "97": "strict",
+ "98": "strict",
+ "99": "loose",
+ "100": "loose",
+ "101": "loose",
+ "102": "strict",
+ "103": "strict",
+ "104": "strict",
+ "105": "loose",
+ "106": "fail",
+ "107": "loose",
+ "108": "strict",
+ "109": "strict",
+ "110": "strict",
+ "111": "strict",
+ "112": "strict",
+ "113": "fail",
+ "114": "fail"
},
"Hard line breaks": {
- "600": true,
- "601": true,
- "602": true,
- "603": true,
- "604": true,
- "605": true,
- "606": true,
- "607": true,
- "608": true,
- "609": true,
- "610": true,
- "611": true,
- "612": true,
- "613": true,
- "614": true
+ "600": "strict",
+ "601": "strict",
+ "602": "strict",
+ "603": "loose",
+ "604": "loose",
+ "605": "strict",
+ "606": "strict",
+ "607": "loose",
+ "608": "loose",
+ "609": "strict",
+ "610": "strict",
+ "611": "strict",
+ "612": "loose",
+ "613": "strict",
+ "614": "strict"
},
"HTML blocks": {
- "115": true,
- "116": true,
- "117": true,
- "118": true,
- "119": true,
- "120": true,
- "121": true,
- "122": true,
- "123": true,
- "124": true,
- "125": true,
- "126": true,
- "127": true,
- "128": true,
- "129": true,
- "130": true,
- "131": true,
- "132": true,
- "133": true,
- "134": true,
- "135": true,
- "136": true,
- "137": true,
- "138": true,
- "139": true,
- "140": true,
- "141": true,
- "142": true,
- "143": true,
- "144": true,
- "145": true,
- "146": true,
- "147": true,
- "148": true,
- "149": true,
- "150": true,
- "151": true,
- "152": true,
- "153": true,
- "154": true,
- "155": true,
- "156": true
+ "115": "strict",
+ "116": "strict",
+ "117": "strict",
+ "118": "loose",
+ "119": "strict",
+ "120": "strict",
+ "121": "strict",
+ "122": "strict",
+ "123": "strict",
+ "124": "strict",
+ "125": "strict",
+ "126": "strict",
+ "127": "strict",
+ "128": "strict",
+ "129": "strict",
+ "130": "strict",
+ "131": "strict",
+ "132": "strict",
+ "133": "loose",
+ "134": "strict",
+ "135": "strict",
+ "136": "strict",
+ "137": "strict",
+ "138": "loose",
+ "139": "loose",
+ "140": "loose",
+ "141": "strict",
+ "142": "strict",
+ "143": "strict",
+ "144": "strict",
+ "145": "strict",
+ "146": "strict",
+ "147": "strict",
+ "148": "strict",
+ "149": "strict",
+ "150": "loose",
+ "151": "strict",
+ "152": "strict",
+ "153": "loose",
+ "154": "strict",
+ "155": "loose",
+ "156": "loose"
},
"Images": {
- "538": true,
- "539": true,
- "540": false,
- "541": true,
- "542": true,
- "543": true,
- "544": true,
- "545": true,
- "546": true,
- "547": true,
- "548": true,
- "549": true,
- "550": true,
- "551": true,
- "552": true,
- "553": true,
- "554": true,
- "555": true,
- "556": true,
- "557": true,
- "558": true,
- "559": true
+ "538": "loose",
+ "539": "loose",
+ "540": "fail",
+ "541": "loose",
+ "542": "loose",
+ "543": "loose",
+ "544": "loose",
+ "545": "loose",
+ "546": "loose",
+ "547": "loose",
+ "548": "loose",
+ "549": "loose",
+ "550": "loose",
+ "551": "loose",
+ "552": "loose",
+ "553": "loose",
+ "554": "loose",
+ "555": "loose",
+ "556": "loose",
+ "557": "loose",
+ "558": "strict",
+ "559": "strict"
},
"Indented code blocks": {
- "76": true,
- "77": true,
- "78": true,
- "79": true,
- "80": false,
- "81": true,
- "82": true,
- "83": true,
- "84": false,
- "85": true,
- "86": true,
- "87": true
+ "76": "strict",
+ "77": "loose",
+ "78": "loose",
+ "79": "strict",
+ "80": "fail",
+ "81": "strict",
+ "82": "loose",
+ "83": "strict",
+ "84": "fail",
+ "85": "strict",
+ "86": "loose",
+ "87": "strict"
},
"Inlines": {
- "287": true
+ "287": "strict"
},
"Link reference definitions": {
- "157": true,
- "158": true,
- "159": false,
- "160": true,
- "161": true,
- "162": true,
- "163": true,
- "164": true,
- "165": false,
- "166": true,
- "167": true,
- "168": true,
- "169": false,
- "170": true,
- "171": true,
- "172": true,
- "173": true,
- "174": true,
- "175": true,
- "176": true,
- "177": true,
- "178": true,
- "179": true
+ "157": "strict",
+ "158": "strict",
+ "159": "fail",
+ "160": "strict",
+ "161": "strict",
+ "162": "strict",
+ "163": "strict",
+ "164": "strict",
+ "165": "fail",
+ "166": "strict",
+ "167": "strict",
+ "168": "strict",
+ "169": "fail",
+ "170": "loose",
+ "171": "strict",
+ "172": "loose",
+ "173": "loose",
+ "174": "loose",
+ "175": "strict",
+ "176": "strict",
+ "177": "loose",
+ "178": "strict",
+ "179": "loose"
},
"Links": {
- "457": true,
- "458": true,
- "459": true,
- "460": true,
- "461": true,
- "462": true,
- "463": true,
- "464": false,
- "465": false,
- "466": false,
- "467": false,
- "468": false,
- "469": false,
- "470": false,
- "471": true,
- "472": false,
- "473": false,
- "474": false,
- "475": false,
- "476": false,
- "477": true,
- "478": false,
- "479": false,
- "480": true,
- "481": false,
- "482": true,
- "483": true,
- "484": true,
- "485": false,
- "486": true,
- "487": false,
- "488": false,
- "489": false,
- "490": false,
- "491": true,
- "492": true,
- "493": true,
- "494": true,
- "495": false,
- "496": true,
- "497": true,
- "498": true,
- "499": false,
- "500": true,
- "501": true,
- "502": false,
- "503": false,
- "504": true,
- "505": true,
- "506": true,
- "507": false,
- "508": true,
- "509": true,
- "510": false,
- "511": true,
- "512": true,
- "513": true,
- "514": true,
- "515": false,
- "516": true,
- "517": true,
- "518": true,
- "519": true,
- "520": true,
- "521": true,
- "522": true,
- "523": true,
- "524": true,
- "525": true,
- "526": true,
- "527": true,
- "528": true,
- "529": true,
- "530": true,
- "531": true,
- "532": true,
- "533": false,
- "534": true,
- "535": true,
- "536": true,
- "537": true
+ "457": "strict",
+ "458": "strict",
+ "459": "strict",
+ "460": "strict",
+ "461": "strict",
+ "462": "loose",
+ "463": "strict",
+ "464": "fail",
+ "465": "fail",
+ "466": "fail",
+ "467": "fail",
+ "468": "fail",
+ "469": "fail",
+ "470": "fail",
+ "471": "strict",
+ "472": "fail",
+ "473": "fail",
+ "474": "fail",
+ "475": "fail",
+ "476": "fail",
+ "477": "loose",
+ "478": "fail",
+ "479": "fail",
+ "480": "strict",
+ "481": "fail",
+ "482": "strict",
+ "483": "strict",
+ "484": "strict",
+ "485": "fail",
+ "486": "loose",
+ "487": "fail",
+ "488": "fail",
+ "489": "fail",
+ "490": "fail",
+ "491": "strict",
+ "492": "strict",
+ "493": "strict",
+ "494": "strict",
+ "495": "fail",
+ "496": "strict",
+ "497": "loose",
+ "498": "strict",
+ "499": "fail",
+ "500": "loose",
+ "501": "loose",
+ "502": "fail",
+ "503": "fail",
+ "504": "strict",
+ "505": "strict",
+ "506": "strict",
+ "507": "fail",
+ "508": "strict",
+ "509": "strict",
+ "510": "fail",
+ "511": "strict",
+ "512": "strict",
+ "513": "strict",
+ "514": "strict",
+ "515": "fail",
+ "516": "strict",
+ "517": "strict",
+ "518": "strict",
+ "519": "strict",
+ "520": "strict",
+ "521": "loose",
+ "522": "strict",
+ "523": "strict",
+ "524": "strict",
+ "525": "loose",
+ "526": "strict",
+ "527": "strict",
+ "528": "strict",
+ "529": "strict",
+ "530": "strict",
+ "531": "strict",
+ "532": "strict",
+ "533": "fail",
+ "534": "strict",
+ "535": "loose",
+ "536": "strict",
+ "537": "loose"
},
"List items": {
- "214": true,
- "215": true,
- "216": true,
- "217": true,
- "218": true,
- "219": true,
- "220": true,
- "221": true,
- "222": true,
- "223": false,
- "224": true,
- "225": false,
- "226": false,
- "227": true,
- "228": false,
- "229": false,
- "230": true,
- "231": true,
- "232": false,
- "233": true,
- "234": false,
- "235": false,
- "236": true,
- "237": true,
- "238": true,
- "239": false,
- "240": false,
- "241": false,
- "242": false,
- "243": false,
- "244": false,
- "245": true,
- "246": false,
- "247": true,
- "248": true,
- "249": true,
- "250": true,
- "251": true,
- "252": true,
- "253": true,
- "254": true,
- "255": true,
- "256": true,
- "257": false,
- "258": false,
- "259": true,
- "260": false,
- "261": true
+ "214": "loose",
+ "215": "loose",
+ "216": "loose",
+ "217": "loose",
+ "218": "loose",
+ "219": "loose",
+ "220": "loose",
+ "221": "loose",
+ "222": "strict",
+ "223": "fail",
+ "224": "loose",
+ "225": "fail",
+ "226": "fail",
+ "227": "strict",
+ "228": "fail",
+ "229": "fail",
+ "230": "strict",
+ "231": "loose",
+ "232": "fail",
+ "233": "strict",
+ "234": "fail",
+ "235": "fail",
+ "236": "loose",
+ "237": "loose",
+ "238": "loose",
+ "239": "fail",
+ "240": "fail",
+ "241": "fail",
+ "242": "fail",
+ "243": "fail",
+ "244": "fail",
+ "245": "loose",
+ "246": "fail",
+ "247": "loose",
+ "248": "loose",
+ "249": "loose",
+ "250": "strict",
+ "251": "loose",
+ "252": "loose",
+ "253": "loose",
+ "254": "loose",
+ "255": "loose",
+ "256": "loose",
+ "257": "fail",
+ "258": "fail",
+ "259": "loose",
+ "260": "fail",
+ "261": "loose"
},
"Lists": {
- "262": true,
- "263": false,
- "264": true,
- "265": true,
- "266": false,
- "267": true,
- "268": false,
- "269": false,
- "270": true,
- "271": true,
- "272": false,
- "273": false,
- "274": true,
- "275": true,
- "276": true,
- "277": true,
- "278": false,
- "279": true,
- "280": true,
- "281": true,
- "282": true,
- "283": true,
- "284": true,
- "285": false,
- "286": true
+ "262": "loose",
+ "263": "fail",
+ "264": "loose",
+ "265": "loose",
+ "266": "fail",
+ "267": "loose",
+ "268": "fail",
+ "269": "fail",
+ "270": "loose",
+ "271": "loose",
+ "272": "fail",
+ "273": "fail",
+ "274": "loose",
+ "275": "loose",
+ "276": "loose",
+ "277": "loose",
+ "278": "fail",
+ "279": "loose",
+ "280": "loose",
+ "281": "loose",
+ "282": "loose",
+ "283": "loose",
+ "284": "loose",
+ "285": "fail",
+ "286": "loose"
},
"Paragraphs": {
- "180": true,
- "181": true,
- "182": true,
- "183": true,
- "184": true,
- "185": true,
- "186": true,
- "187": true
+ "180": "strict",
+ "181": "strict",
+ "182": "strict",
+ "183": "loose",
+ "184": "loose",
+ "185": "loose",
+ "186": "strict",
+ "187": "loose"
},
"Precedence": {
- "12": true
+ "12": "loose"
},
"Raw HTML": {
- "579": true,
- "580": false,
- "581": false,
- "582": true,
- "583": true,
- "584": true,
- "585": false,
- "586": true,
- "587": true,
- "588": false,
- "589": true,
- "590": false,
- "591": true,
- "592": true,
- "593": true,
- "594": true,
- "595": true,
- "596": true,
- "597": true,
- "598": true,
- "599": false
+ "579": "strict",
+ "580": "fail",
+ "581": "fail",
+ "582": "strict",
+ "583": "strict",
+ "584": "loose",
+ "585": "fail",
+ "586": "loose",
+ "587": "loose",
+ "588": "fail",
+ "589": "strict",
+ "590": "fail",
+ "591": "loose",
+ "592": "loose",
+ "593": "loose",
+ "594": "strict",
+ "595": "strict",
+ "596": "loose",
+ "597": "strict",
+ "598": "strict",
+ "599": "fail"
},
"Setext headings": {
- "50": true,
- "51": false,
- "52": true,
- "53": false,
- "54": true,
- "55": false,
- "56": true,
- "57": true,
- "58": true,
- "59": true,
- "60": true,
- "61": true,
- "62": false,
- "63": true,
- "64": false,
- "65": true,
- "66": true,
- "67": true,
- "68": true,
- "69": false,
- "70": true,
- "71": true,
- "72": true,
- "73": true,
- "74": true,
- "75": true
+ "50": "strict",
+ "51": "fail",
+ "52": "strict",
+ "53": "fail",
+ "54": "strict",
+ "55": "fail",
+ "56": "loose",
+ "57": "strict",
+ "58": "loose",
+ "59": "strict",
+ "60": "loose",
+ "61": "loose",
+ "62": "fail",
+ "63": "loose",
+ "64": "fail",
+ "65": "strict",
+ "66": "strict",
+ "67": "strict",
+ "68": "loose",
+ "69": "fail",
+ "70": "loose",
+ "71": "loose",
+ "72": "strict",
+ "73": "strict",
+ "74": "strict",
+ "75": "strict"
},
"Soft line breaks": {
- "615": true,
- "616": true
+ "615": "strict",
+ "616": "loose"
},
"Tabs": {
- "1": true,
- "2": false,
- "3": true,
- "4": false,
- "5": false,
- "6": true,
- "7": true,
- "8": true,
- "9": false,
- "10": true,
- "11": false
+ "1": "strict",
+ "2": "fail",
+ "3": "strict",
+ "4": "fail",
+ "5": "fail",
+ "6": "loose",
+ "7": "loose",
+ "8": "strict",
+ "9": "fail",
+ "10": "strict",
+ "11": "fail"
},
"Textual content": {
- "617": true,
- "618": true,
- "619": true
+ "617": "strict",
+ "618": "strict",
+ "619": "strict"
},
"Thematic breaks": {
- "13": true,
- "14": true,
- "15": true,
- "16": true,
- "17": true,
- "18": true,
- "19": true,
- "20": true,
- "21": true,
- "22": true,
- "23": true,
- "24": true,
- "25": false,
- "26": true,
- "27": true,
- "28": true,
- "29": true,
- "30": false,
- "31": true
+ "13": "strict",
+ "14": "strict",
+ "15": "strict",
+ "16": "strict",
+ "17": "strict",
+ "18": "strict",
+ "19": "loose",
+ "20": "strict",
+ "21": "strict",
+ "22": "strict",
+ "23": "strict",
+ "24": "strict",
+ "25": "fail",
+ "26": "loose",
+ "27": "loose",
+ "28": "strict",
+ "29": "strict",
+ "30": "fail",
+ "31": "loose"
}
}