summaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/gitbook-markdown/lib/summary.js1
-rw-r--r--packages/gitbook-markdown/test/fixtures/SUMMARY_SUBLIST.md6
-rw-r--r--packages/gitbook-markdown/test/summary.js9
3 files changed, 16 insertions, 0 deletions
diff --git a/packages/gitbook-markdown/lib/summary.js b/packages/gitbook-markdown/lib/summary.js
index 2cb31be..77284cf 100644
--- a/packages/gitbook-markdown/lib/summary.js
+++ b/packages/gitbook-markdown/lib/summary.js
@@ -103,6 +103,7 @@ function parseTitle(src) {
function parseChapter(nodes) {
var node = _.first(nodes);
if (!node) return null;
+ if (!node.text) throw new Error("Invalid entry in the SUMMARY");
return _.extend(parseTitle(node.text), {
articles: _.chain(listSplit(filterList(nodes), 'list_item_start', 'list_item_end'))
diff --git a/packages/gitbook-markdown/test/fixtures/SUMMARY_SUBLIST.md b/packages/gitbook-markdown/test/fixtures/SUMMARY_SUBLIST.md
new file mode 100644
index 0000000..9f21215
--- /dev/null
+++ b/packages/gitbook-markdown/test/fixtures/SUMMARY_SUBLIST.md
@@ -0,0 +1,6 @@
+# Summary
+
+* Test
+* 1. Landform
+
+
diff --git a/packages/gitbook-markdown/test/summary.js b/packages/gitbook-markdown/test/summary.js
index 98cd57f..a1bb49a 100644
--- a/packages/gitbook-markdown/test/summary.js
+++ b/packages/gitbook-markdown/test/summary.js
@@ -56,6 +56,15 @@ describe('Summary parsing', function () {
assert.equal(l.chapters.length, 1);
});
+ it('should throw error for sublist entries', function() {
+ assert.throws(
+ function() {
+ var l = lex('SUMMARY_SUBLIST.md');
+ },
+ "Invalid entry in the SUMMARY"
+ );
+ });
+
it('should correctly convert it to text', function() {
var text = summary.toText(LEXED);
assertObjectsEqual(summary(text), LEXED);