File tree Expand file tree Collapse file tree 4 files changed +55
-5
lines changed Expand file tree Collapse file tree 4 files changed +55
-5
lines changed Original file line number Diff line number Diff line change 109109 // map over any actions and add them
110110 actions .forEach (({type, value}) => {
111111 if (page .hasOwnProperty (type)) {
112- throw ` ${ type} already exists on page "${ page .title } " ` ;
112+ throw new Error ( ` \" ${ type} \" already exists on page \ "${ page .title } \" ` ) ;
113113 }
114114 page[type] = value;
115115 });
@@ -186,7 +186,7 @@ on_page_complete
186186 // remove '\')' from end
187187 value = value .slice (0 , - 2 );
188188 } else {
189- throw ` Invalid @onPageComplete(). Expected closing quote and bracket but found: ${ value} ` ;
189+ throw new Error ( ` Invalid @onPageComplete(). Expected closing quote and bracket but found: " ${ value} " ` ) ;
190190 }
191191 return {
192192 type: ' onPageComplete' ,
Original file line number Diff line number Diff line change @@ -13,7 +13,7 @@ on_page_complete
1313 // remove '\')' from end
1414 value = value .slice (0 , - 2 );
1515 } else {
16- throw ` Invalid @onPageComplete(). Expected closing quote and bracket but found: ${ value} ` ;
16+ throw new Error ( ` Invalid @onPageComplete(). Expected closing quote and bracket but found: " ${ value} " ` ) ;
1717 }
1818 return {
1919 type: ' onPageComplete' ,
Original file line number Diff line number Diff line change 1414 // map over any actions and add them
1515 actions .forEach (({type, value}) => {
1616 if (page .hasOwnProperty (type)) {
17- throw ` ${ type} already exists on page "${ page .title } " ` ;
17+ throw new Error ( ` \" ${ type} \" already exists on page \ "${ page .title } \" ` ) ;
1818 }
1919 page[type] = value;
2020 });
Original file line number Diff line number Diff line change @@ -36,4 +36,54 @@ description
3636 t . is ( result . pages [ 1 ] . onPageComplete , expectedSecond ) ;
3737} ) ;
3838
39- test . todo ( 'throws when multiple onPageCompletes' ) ;
39+ test ( 'throws when onPageComplete does not close bracket' , t => {
40+ const data = `# Title
41+ description
42+
43+ ## Page One
44+ description
45+
46+ @onPageComplete('when page ends'
47+ ` ;
48+
49+ try {
50+ parse ( data ) ;
51+ } catch ( e ) {
52+ t . is ( e . message , "Invalid @onPageComplete(). Expected closing quote and bracket but found: \"when page ends'\"" )
53+ }
54+ } ) ;
55+
56+ test ( 'throws when onPageComplete does not close quote' , t => {
57+ const data = `# Title
58+ description
59+
60+ ## Page One
61+ description
62+
63+ @onPageComplete('when page ends)
64+ ` ;
65+
66+ try {
67+ parse ( data ) ;
68+ } catch ( e ) {
69+ t . is ( e . message , "Invalid @onPageComplete(). Expected closing quote and bracket but found: \"when page ends)\"" )
70+ }
71+ } ) ;
72+
73+ test ( 'throws when multiple onPageCompletes' , t => {
74+ const data = `# Title
75+ description
76+
77+ ## Page One
78+ description
79+
80+ @onPageComplete('first')
81+ @onPageComplete('second')
82+ ` ;
83+
84+ try {
85+ parse ( data ) ;
86+ } catch ( e ) {
87+ t . is ( e . message , "\"onPageComplete\" already exists on page \"Page One\"" ) ;
88+ }
89+ } ) ;
You can’t perform that action at this time.
0 commit comments