diff --git a/tests/tests.js b/tests/tests.js
index ea9c9e7..abc6621 100644
--- a/tests/tests.js
+++ b/tests/tests.js
@@ -55,7 +55,14 @@ var tests = [
'out': [['para', [['bold', [['italic', ['bolditalic']]]]]]]
},
{
- 'in': 'para1**bla**\n//dsds//\n\npara2 \n para2\n\npara3',
+ 'in': [
+ 'para1**bla**',
+ '//dsds//',
+ '',
+ 'para2 ',
+ ' para2',
+ '',
+ 'para3'],
'out': [
['para', ['para1', ['bold', ['bla']], ' ', ['italic', ['dsds']]]],
['para', ['para2 para2']],
@@ -63,11 +70,21 @@ var tests = [
]
},
{
- 'in': 'para11 \n para11\n\npara2\n',
- 'out': [['para', ['para11 para11']], ['para', ['para2']]]
+ 'in': [
+ 'para11 ',
+ ' para11',
+ '',
+ 'para2',
+ ''],
+ 'out': [['para',
+ ['para11 para11']],
+ ['para', ['para2']]]
},
{
- 'in': '* listitem1\n* listitem2\n * sublistitem2',
+ 'in': [
+ '* listitem1',
+ '* listitem2',
+ ' * sublistitem2'],
'out': [[
'ulist',
[
@@ -83,7 +100,10 @@ var tests = [
]]
},
{
- 'in': '1. listitem1\n2. listitem2\n 1. sublistitem2',
+ 'in': [
+ '1. listitem1',
+ '2. listitem2',
+ ' 1. sublistitem2'],
'out': [[
'olist',
[
@@ -96,7 +116,9 @@ var tests = [
]]
},
{
- 'in': '1. olistitem1\n* ulistitem2',
+ 'in': [
+ '1. olistitem1',
+ '* ulistitem2'],
'out': [
[
'olist',
@@ -106,7 +128,10 @@ var tests = [
]
},
{
- 'in': '* listitem1\n * sublistitem1\n * subsublistitem1',
+ 'in': [
+ '* listitem1',
+ ' * sublistitem1',
+ ' * subsublistitem1'],
'out': [[
'ulist',
[[
@@ -128,7 +153,11 @@ var tests = [
]]
},
{
- 'in': '* listitem1\n * sublistitem1\n * subsublistitem1\n * sublistitem2',
+ 'in': [
+ '* listitem1',
+ ' * sublistitem1',
+ ' * subsublistitem1',
+ ' * sublistitem2'],
'out': [[
'ulist',
[[
@@ -153,7 +182,12 @@ var tests = [
]]
},
{
- 'in': '* listitem1\n * sublistitem1\n 1. osubsublistitem1\n * usubsublistitem1\n * sublistitem2',
+ 'in':[
+ '* listitem1',
+ ' * sublistitem1',
+ ' 1. osubsublistitem1',
+ ' * usubsublistitem1',
+ ' * sublistitem2'],
'out': [[
'ulist',
[[
@@ -179,7 +213,12 @@ var tests = [
]]
},
{
- 'in': '* listitem1\n * sublistitem1\n * subsublistitem1\n * sublistitem2\n * subsublistitem2',
+ 'in':[
+ '* listitem1',
+ ' * sublistitem1',
+ ' * subsublistitem1',
+ ' * sublistitem2',
+ ' * subsublistitem2'],
'out': [[
'ulist',
[[
@@ -210,7 +249,13 @@ var tests = [
]]
},
{
- 'in': '* listitem1\n* listitem2\n * sublistitem21\n* listitem3\n * sublistitem31\n * sublistitem32',
+ 'in': [
+ '* listitem1',
+ '* listitem2',
+ ' * sublistitem21',
+ '* listitem3',
+ ' * sublistitem31',
+ ' * sublistitem32'],
'out': [[
'ulist',
[
@@ -236,7 +281,13 @@ var tests = [
]]
},
{
- 'in': '1. listitem1\n2. listitem2\n * sublistitem21\n3. listitem3\n * sublistitem31\n * sublistitem32',
+ 'in': [
+ '1. listitem1',
+ '2. listitem2',
+ ' * sublistitem21',
+ '3. listitem3',
+ ' * sublistitem31',
+ ' * sublistitem32'],
'out': [[
'olist',
[
@@ -273,7 +324,7 @@ var tests = [
' * uli2223',
' 3. oli223',
' * uli23',
- '3. li3'].join('\n'),
+ '3. li3'],
'out':[["olist",
[["olistItem", ["oli1"]],
["olistItem",
@@ -296,7 +347,12 @@ var tests = [
},
{
- 'in': 'para1\n* listitem1\n* listitem2\n\npara2',
+ 'in': [
+ 'para1',
+ '* listitem1',
+ '* listitem2',
+ '',
+ 'para2'],
'out': [
['para', ['para1']],
[
@@ -310,7 +366,13 @@ var tests = [
]
},
{
- 'in': '==header11**bold1**\n\npara2\n===header22\npara2\n====header33==',
+ 'in': [
+ '==header11**bold1**',
+ '',
+ 'para2',
+ '===header22',
+ 'para2',
+ '====header33=='],
'out': [
['header1', ['header11', ['bold', ['bold1']]], 'header11bold1'],
['para', ['para2']],
@@ -320,7 +382,13 @@ var tests = [
]
},
{
- 'in': '==**xbold1**\n\n**para2**\n===**header22**\n**para2**\n====**header33**==',
+ 'in': [
+ '==**xbold1**',
+ '',
+ '**para2**',
+ '===**header22**',
+ '**para2**',
+ '====**header33**=='],
'out': [
['header1', [['bold', ['xbold1']]], 'xbold1'],
['para', [['bold', ['para2']]]],
@@ -330,7 +398,10 @@ var tests = [
]
},
{
- 'in': '==header11==#id1\n===header22===#idw\n====header33====#idq',
+ 'in': [
+ '==header11==#id1',
+ '===header22===#idw',
+ '====header33====#idq'],
'out': [
['header1', ['header11'], 'id1'],
['header2', ['header22'], 'idw'],
@@ -338,7 +409,13 @@ var tests = [
]
},
{
- 'in': '==**xbold1**id1\n\n**para2**\n===**header22**id2\n**para2**\n====**header33**==id3',
+ 'in': [
+ '==**xbold1**id1',
+ '',
+ '**para2**',
+ '===**header22**id2',
+ '**para2**',
+ '====**header33**==id3'],
'out': [
['header1', [['bold', ['xbold1']], 'id1'], 'xbold1id1'],
['para', [['bold', ['para2']]]],
@@ -348,7 +425,10 @@ var tests = [
]
},
{
- 'in': '=== header\n#id\nsometext',
+ 'in': [
+ '=== header',
+ '#id',
+ 'sometext'],
'out': [
['header2', ['header'], 'header'],
['para', ['#id sometext']]
@@ -367,7 +447,10 @@ var tests = [
]
},
{
- 'in': '* listitem **bold**\n* listitem //italic//\n* listitem **bo//italic_**',
+ 'in': [
+ '* listitem **bold**',
+ '* listitem //italic//',
+ '* listitem **bo//italic_**'],
'out': [[
'ulist',
[
@@ -381,7 +464,11 @@ var tests = [
]]
},
{
- 'in': '* listitem **bold**\n* listitem //italic//\n\n* listitem **bo//italic_**',
+ 'in': [
+ '* listitem **bold**',
+ '* listitem //italic//',
+ '',
+ '* listitem **bo//italic_**'],
'out': [
[
'ulist',
@@ -439,7 +526,21 @@ var tests = [
]]
},
{
- 'in': 'line1\n%%\next1\n%%\n%%A%\next2\n%A%%\n%%A%html\nbol%%d\n%A%%\n\n%%bla\nblabla\n%%',
+ 'in': [
+ 'line1',
+ '%%',
+ 'ext1',
+ '%%',
+ '%%A%',
+ 'ext2',
+ '%A%%',
+ '%%A%html',
+ 'bol%%d',
+ '%A%%',
+ '',
+ '%%bla',
+ 'blabla',
+ '%%'],
'out': [
['para', ['line1']],
['extension', '', 'ext1', ''],
@@ -449,13 +550,19 @@ var tests = [
]
},
{
- 'in': '%%ext params\nextcont\n%%',
+ 'in': [
+ '%%ext params',
+ 'extcont',
+ '%%'],
'out': [
['extension', 'ext', 'extcont', 'params']
]
},
{
- 'in': '%%ohl js\nvar b = \'bla\';\n%%',
+ 'in': [
+ '%%ohl js',
+ 'var b = \'bla\';',
+ '%%'],
'out': [
[
'extension', 'ohl',
@@ -479,7 +586,10 @@ var tests = [
]
},
{
- 'in': '%%hl js\nvar b = \'bla\';\n%%',
+ 'in': [
+ '%%hl js',
+ 'var b = \'bla\';',
+ '%%'],
'out': [
[
'extension', 'hl',
@@ -501,7 +611,12 @@ var tests = [
]
},
{
- 'in': 'bla\n%%hljs javascript\nfunction() { return true }\n%%\nbla',
+ 'in': [
+ 'bla',
+ '%%hljs javascript',
+ 'function() { return true }',
+ '%%',
+ 'bla'],
'out': [
['para', ['bla']],
['extension', 'hljs', 'function() { return true }', 'javascript'],
@@ -509,7 +624,13 @@ var tests = [
]
},
{
- 'in': 'para1\n\npara2\npara2\n\npara3',
+ 'in': [
+ 'para1',
+ '',
+ 'para2',
+ 'para2',
+ '',
+ 'para3'],
'out': [
['para', ['para1']],
['para', ['para2 para2']],
@@ -524,6 +645,9 @@ var api = require('../lib/shmakowiki.js'),
for (var i = 0; i < tests.length; i++) {
var test = tests[i];
+ test['in'] = (typeof test['in'] === 'string' ?
+ test['in'] : test['in'].join('\n'));
+
test.res = api.shmakowikiToAst(test['in']);
var res = JSON.stringify(test.res),