Merge "Chinese Conversion Table Update 2017-6"
[lhc/web/wiklou.git] / tests / phpunit / includes / logging / PageLangLogFormatterTest.php
1 <?php
2
3 /**
4 * @covers PageLangLogFormatter
5 */
6 class PageLangLogFormatterTest extends LogFormatterTestCase {
7
8 protected function setUp() {
9 parent::setUp();
10
11 // Disable cldr extension
12 $this->setMwGlobals( 'wgHooks', [] );
13 // Register LogHandler, see $wgPageLanguageUseDB in Setup.php
14 $this->mergeMwGlobalArrayValue( 'wgLogActionsHandlers', [
15 'pagelang/pagelang' => 'PageLangLogFormatter',
16 ] );
17 }
18
19 /**
20 * Provide different rows from the logging table to test
21 * for backward compatibility.
22 * Do not change the existing data, just add a new database row
23 */
24 public static function providePageLangLogDatabaseRows() {
25 return [
26 // Current format
27 [
28 [
29 'type' => 'pagelang',
30 'action' => 'pagelang',
31 'comment' => 'page lang comment',
32 'namespace' => NS_MAIN,
33 'title' => 'Page',
34 'params' => [
35 '4::oldlanguage' => 'en',
36 '5::newlanguage' => 'de[def]',
37 ],
38 ],
39 [
40 'text' => 'User changed the language of Page from English (en) to Deutsch (de) [default]',
41 'api' => [
42 'oldlanguage' => 'en',
43 'newlanguage' => 'de[def]'
44 ],
45 ],
46 ],
47 ];
48 }
49
50 /**
51 * @dataProvider providePageLangLogDatabaseRows
52 */
53 public function testPageLangLogDatabaseRows( $row, $extra ) {
54 $this->doTestLogFormatter( $row, $extra );
55 }
56 }