summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
blob: d49206f7b1fae5d83198c5f9d892f5299a643c3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
/**
 * @file
 * @author Niklas Laxström
 * @license GPL-2.0-or-later
 */

class MediaWikiInsertablesSuggesterTest extends PHPUnit\Framework\TestCase {

	/**
	 * @dataProvider getInsertablesProvider
	 */
	public function testGetInsertables( $input, $expected ) {
		$suggester = new MediaWikiInsertablesSuggester();
		$this->assertEquals( $expected, $suggester->getInsertables( $input ) );
	}

	public function getInsertablesProvider() {
		return [
			[ 'Hi $1', [
				new Insertable( '$1', '$1', '' )
			] ],
			[ 'Hello $1user', [
				new Insertable( '$1user', '$1user', '' ),
			] ],
			[ '{{GENDER:$1|he|she}}', [
				new Insertable( '$1', '$1', '' ),
				new Insertable( 'GENDER:$1', '{{GENDER:$1|', '}}' ),
			] ],
			// Parameterless gender
			[ '{{GENDER:|he|she}}', [
				new Insertable( 'GENDER:', '{{GENDER:|', '}}' ),
			] ],
		];
	}
}