 c2370a1be6
			
		
	
	c2370a1be6
	
	
	
		
			
			* chore: Add the SPDX information to each file Add copyright and licensing information as defined in version 3.0 of the REUSE Specification. * tweak format --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
		
			
				
	
	
		
			48 lines
		
	
	
		
			939 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			939 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /*
 | |
|  * SPDX-FileCopyrightText: syuilo and other misskey contributors
 | |
|  * SPDX-License-Identifier: AGPL-3.0-only
 | |
|  */
 | |
| 
 | |
| import * as assert from 'assert';
 | |
| 
 | |
| import { parse } from 'mfm-js';
 | |
| import { extractMentions } from '@/misc/extract-mentions.js';
 | |
| 
 | |
| describe('Extract mentions', () => {
 | |
| 	test('simple', () => {
 | |
| 		const ast = parse('@foo @bar @baz');
 | |
| 		const mentions = extractMentions(ast);
 | |
| 		assert.deepStrictEqual(mentions, [{
 | |
| 			username: 'foo',
 | |
| 			acct: '@foo',
 | |
| 			host: null,
 | |
| 		}, {
 | |
| 			username: 'bar',
 | |
| 			acct: '@bar',
 | |
| 			host: null,
 | |
| 		}, {
 | |
| 			username: 'baz',
 | |
| 			acct: '@baz',
 | |
| 			host: null,
 | |
| 		}]);
 | |
| 	});
 | |
| 
 | |
| 	test('nested', () => {
 | |
| 		const ast = parse('@foo **@bar** @baz');
 | |
| 		const mentions = extractMentions(ast);
 | |
| 		assert.deepStrictEqual(mentions, [{
 | |
| 			username: 'foo',
 | |
| 			acct: '@foo',
 | |
| 			host: null,
 | |
| 		}, {
 | |
| 			username: 'bar',
 | |
| 			acct: '@bar',
 | |
| 			host: null,
 | |
| 		}, {
 | |
| 			username: 'baz',
 | |
| 			acct: '@baz',
 | |
| 			host: null,
 | |
| 		}]);
 | |
| 	});
 | |
| });
 |