summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-03-01 14:29:02 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-03-01 14:29:02 +0900
commit93149de584cbca2dbf99c10fcb40a4ec215ba66d (patch)
treeb3543ff97eb14a0ffdb65a924df7f1b86b62cd8d
parentAdd nice comment (diff)
downloadsharkey-93149de584cbca2dbf99c10fcb40a4ec215ba66d.tar.gz
sharkey-93149de584cbca2dbf99c10fcb40a4ec215ba66d.tar.bz2
sharkey-93149de584cbca2dbf99c10fcb40a4ec215ba66d.zip
[Test] Add a test
-rw-r--r--test/text.ts89
1 files changed, 48 insertions, 41 deletions
diff --git a/test/text.ts b/test/text.ts
index 8a210575d9..e2527cfe0b 100644
--- a/test/text.ts
+++ b/test/text.ts
@@ -19,54 +19,61 @@ describe('Text', () => {
], tokens);
});
- it('bold', () => {
- const tokens = analyze('**Strawberry** Pasta');
- assert.deepEqual([
- { type: 'bold', content: '**Strawberry**', bold: 'Strawberry' },
- { type: 'text', content: ' Pasta' }
- ], tokens);
+ it('逆関数で正しく復元できる', () => {
+ const text = '@himawari お腹ペコい :cat: #yryr';
+ assert.equal(analyze(text).map(x => x.content).join(''), text);
});
- it('mention', () => {
- const tokens = analyze('@himawari お腹ペコい');
- assert.deepEqual([
- { type: 'mention', content: '@himawari', username: 'himawari' },
- { type: 'text', content: ' お腹ペコい' }
- ], tokens);
- });
+ describe('elements', () => {
+ it('bold', () => {
+ const tokens = analyze('**Strawberry** Pasta');
+ assert.deepEqual([
+ { type: 'bold', content: '**Strawberry**', bold: 'Strawberry' },
+ { type: 'text', content: ' Pasta' }
+ ], tokens);
+ });
- it('hashtag', () => {
- const tokens = analyze('Strawberry Pasta #alice');
- assert.deepEqual([
- { type: 'text', content: 'Strawberry Pasta ' },
- { type: 'hashtag', content: '#alice', hashtag: 'alice' }
- ], tokens);
- });
+ it('mention', () => {
+ const tokens = analyze('@himawari お腹ペコい');
+ assert.deepEqual([
+ { type: 'mention', content: '@himawari', username: 'himawari' },
+ { type: 'text', content: ' お腹ペコい' }
+ ], tokens);
+ });
- it('link', () => {
- const tokens = analyze('https://himasaku.net');
- assert.deepEqual([
- { type: 'link', content: 'https://himasaku.net' }
- ], tokens);
- });
+ it('hashtag', () => {
+ const tokens = analyze('Strawberry Pasta #alice');
+ assert.deepEqual([
+ { type: 'text', content: 'Strawberry Pasta ' },
+ { type: 'hashtag', content: '#alice', hashtag: 'alice' }
+ ], tokens);
+ });
- it('emoji', () => {
- const tokens = analyze(':cat:');
- assert.deepEqual([
- { type: 'emoji', content: ':cat:', emoji: 'cat'}
- ], tokens);
- });
+ it('link', () => {
+ const tokens = analyze('https://himasaku.net');
+ assert.deepEqual([
+ { type: 'link', content: 'https://himasaku.net' }
+ ], tokens);
+ });
- it('block code', () => {
- const tokens = analyze('```\nvar x = "Strawberry Pasta";\n```');
- assert.equal(tokens[0].type, 'code');
- assert.equal(tokens[0].content, '```\nvar x = "Strawberry Pasta";\n```');
- });
+ it('emoji', () => {
+ const tokens = analyze(':cat:');
+ assert.deepEqual([
+ { type: 'emoji', content: ':cat:', emoji: 'cat'}
+ ], tokens);
+ });
- it('inline code', () => {
- const tokens = analyze('`var x = "Strawberry Pasta";`');
- assert.equal(tokens[0].type, 'inline-code');
- assert.equal(tokens[0].content, '`var x = "Strawberry Pasta";`');
+ it('block code', () => {
+ const tokens = analyze('```\nvar x = "Strawberry Pasta";\n```');
+ assert.equal(tokens[0].type, 'code');
+ assert.equal(tokens[0].content, '```\nvar x = "Strawberry Pasta";\n```');
+ });
+
+ it('inline code', () => {
+ const tokens = analyze('`var x = "Strawberry Pasta";`');
+ assert.equal(tokens[0].type, 'inline-code');
+ assert.equal(tokens[0].content, '`var x = "Strawberry Pasta";`');
+ });
});
describe('syntax highlighting', () => {