rdbms: Rename "memCache" to "memStash" in LBFactory
[mediawiki.git] / tests / phpunit / includes / logging / NewUsersLogFormatterTest.php
blob333fd88da69fe7cb2c5ecbc1c39dbb315c0d322a
1 <?php
3 /**
4 * @group Database
5 */
6 class NewUsersLogFormatterTest extends LogFormatterTestCase {
8 protected function setUp() {
9 parent::setUp();
11 // Register LogHandler, see $wgNewUserLog in Setup.php
12 $this->mergeMwGlobalArrayValue( 'wgLogActionsHandlers', [
13 'newusers/newusers' => 'NewUsersLogFormatter',
14 'newusers/create' => 'NewUsersLogFormatter',
15 'newusers/create2' => 'NewUsersLogFormatter',
16 'newusers/byemail' => 'NewUsersLogFormatter',
17 'newusers/autocreate' => 'NewUsersLogFormatter',
18 ] );
21 /**
22 * Provide different rows from the logging table to test
23 * for backward compatibility.
24 * Do not change the existing data, just add a new database row
26 public static function provideNewUsersLogDatabaseRows() {
27 return [
28 // Only old logs
31 'type' => 'newusers',
32 'action' => 'newusers',
33 'comment' => 'newusers comment',
34 'user' => 0,
35 'user_text' => 'New user',
36 'namespace' => NS_USER,
37 'title' => 'New user',
38 'params' => [],
41 'legacy' => true,
42 'text' => 'User account New user was created',
43 'api' => [],
49 /**
50 * @dataProvider provideNewUsersLogDatabaseRows
52 public function testNewUsersLogDatabaseRows( $row, $extra ) {
53 $this->doTestLogFormatter( $row, $extra );
56 /**
57 * Provide different rows from the logging table to test
58 * for backward compatibility.
59 * Do not change the existing data, just add a new database row
61 public static function provideCreateLogDatabaseRows() {
62 return [
63 // Current format
66 'type' => 'newusers',
67 'action' => 'create',
68 'comment' => 'newusers comment',
69 'user' => 0,
70 'user_text' => 'New user',
71 'namespace' => NS_USER,
72 'title' => 'New user',
73 'params' => [
74 '4::userid' => 1,
78 'text' => 'User account New user was created',
79 'api' => [
80 'userid' => 1,
87 /**
88 * @dataProvider provideCreateLogDatabaseRows
90 public function testCreateLogDatabaseRows( $row, $extra ) {
91 $this->doTestLogFormatter( $row, $extra );
94 /**
95 * Provide different rows from the logging table to test
96 * for backward compatibility.
97 * Do not change the existing data, just add a new database row
99 public static function provideCreate2LogDatabaseRows() {
100 return [
101 // Current format
104 'type' => 'newusers',
105 'action' => 'create2',
106 'comment' => 'newusers comment',
107 'user' => 0,
108 'user_text' => 'User',
109 'namespace' => NS_USER,
110 'title' => 'UTSysop'
113 'text' => 'User account UTSysop was created by User'
120 * @dataProvider provideCreate2LogDatabaseRows
122 public function testCreate2LogDatabaseRows( $row, $extra ) {
123 // Make UTSysop user and use its user_id (sequence does not reset to 1 for postgres)
124 $user = static::getTestSysop()->getUser();
125 $row['params']['4::userid'] = $user->getId();
126 $extra['api']['userid'] = $user->getId();
127 $this->doTestLogFormatter( $row, $extra );
131 * Provide different rows from the logging table to test
132 * for backward compatibility.
133 * Do not change the existing data, just add a new database row
135 public static function provideByemailLogDatabaseRows() {
136 return [
137 // Current format
140 'type' => 'newusers',
141 'action' => 'byemail',
142 'comment' => 'newusers comment',
143 'user' => 0,
144 'user_text' => 'Sysop',
145 'namespace' => NS_USER,
146 'title' => 'UTSysop'
149 'text' => 'User account UTSysop was created by Sysop and password was sent by email'
156 * @dataProvider provideByemailLogDatabaseRows
158 public function testByemailLogDatabaseRows( $row, $extra ) {
159 // Make UTSysop user and use its user_id (sequence does not reset to 1 for postgres)
160 $user = static::getTestSysop()->getUser();
161 $row['params']['4::userid'] = $user->getId();
162 $extra['api']['userid'] = $user->getId();
163 $this->doTestLogFormatter( $row, $extra );
167 * Provide different rows from the logging table to test
168 * for backward compatibility.
169 * Do not change the existing data, just add a new database row
171 public static function provideAutocreateLogDatabaseRows() {
172 return [
173 // Current format
176 'type' => 'newusers',
177 'action' => 'autocreate',
178 'comment' => 'newusers comment',
179 'user' => 0,
180 'user_text' => 'New user',
181 'namespace' => NS_USER,
182 'title' => 'New user',
183 'params' => [
184 '4::userid' => 1,
188 'text' => 'User account New user was created automatically',
189 'api' => [
190 'userid' => 1,
198 * @dataProvider provideAutocreateLogDatabaseRows
200 public function testAutocreateLogDatabaseRows( $row, $extra ) {
201 $this->doTestLogFormatter( $row, $extra );