summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
blob: 549bb4618a250b4b8a514638e89da216c51de286 (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
37
38
<?php
/**
 * Tests for class MediaWikiInsertablesSuggester
 *
 * @file
 * @author Niklas Laxström
 * @license GPL-2.0+
 */

class MediaWikiInsertablesSuggesterTest extends MediaWikiTestCase {

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

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