From 3a5732ce7d2c276a1dd6288c167e26911c01df62 Mon Sep 17 00:00:00 2001
From: syuilo <Syuilotan@yahoo.co.jp>
Date: Sat, 5 Jun 2021 16:23:49 +0900
Subject: [PATCH] Add code block tests

---
 test/parser.ts | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/test/parser.ts b/test/parser.ts
index 391af37..90b213c 100644
--- a/test/parser.ts
+++ b/test/parser.ts
@@ -173,16 +173,19 @@ describe('FullParser', () => {
 			const output = [CODE_BLOCK('abc', null)];
 			assert.deepStrictEqual(mfm.parse(input), output);
 		});
+
 		it('コードブロックには複数行のコードを入力できる', () => {
 			const input = '```\na\nb\nc\n```';
 			const output = [CODE_BLOCK('a\nb\nc', null)];
 			assert.deepStrictEqual(mfm.parse(input), output);
 		});
+
 		it('コードブロックは言語を指定できる', () => {
 			const input = '```js\nconst a = 1;\n```';
 			const output = [CODE_BLOCK('const a = 1;', 'js')];
 			assert.deepStrictEqual(mfm.parse(input), output);
 		});
+
 		it('ブロックの前後にあるテキストが正しく解釈される', () => {
 			const input = 'abc\n```\nconst abc = 1;\n```\n123';
 			const output = [
@@ -192,6 +195,21 @@ describe('FullParser', () => {
 			];
 			assert.deepStrictEqual(mfm.parse(input), output);
 		});
+
+		it('ignore internal marker', () => {
+			const input = '```\naaa```bbb\n```';
+			const output = [CODE_BLOCK('aaa```bbb', null)];
+			assert.deepStrictEqual(mfm.parse(input), output);
+		});
+
+		it('trim after line break', () => {
+			const input = '```\nfoo\n```\nbar';
+			const output = [
+				CODE_BLOCK('foo', null),
+				TEXT('bar'),
+			];
+			assert.deepStrictEqual(mfm.parse(input), output);
+		});
 	});
 
 	describe('mathBlock', () => {
-- 
GitLab