summaryrefslogtreecommitdiff
path: root/www/wiki/tests/phpunit/includes/TimeAdjustTest.php
blob: 93aef34b13795b2e49081afd294536025bca61b6 (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
39
<?php

class TimeAdjustTest extends MediaWikiLangTestCase {
	protected function setUp() {
		parent::setUp();
	}

	/**
	 * Test offset usage for a given Language::userAdjust
	 * @dataProvider dataUserAdjust
	 * @covers Language::userAdjust
	 */
	public function testUserAdjust( $date, $localTZoffset, $expected ) {
		global $wgContLang;

		$this->setMwGlobals( 'wgLocalTZoffset', $localTZoffset );

		$this->assertEquals(
			$expected,
			strval( $wgContLang->userAdjust( $date, '' ) ),
			"User adjust {$date} by {$localTZoffset} minutes should give {$expected}"
		);
	}

	public static function dataUserAdjust() {
		return [
			[ '20061231235959', 0, '20061231235959' ],
			[ '20061231235959', 5, '20070101000459' ],
			[ '20061231235959', 15, '20070101001459' ],
			[ '20061231235959', 60, '20070101005959' ],
			[ '20061231235959', 90, '20070101012959' ],
			[ '20061231235959', 120, '20070101015959' ],
			[ '20061231235959', 540, '20070101085959' ],
			[ '20061231235959', -5, '20061231235459' ],
			[ '20061231235959', -30, '20061231232959' ],
			[ '20061231235959', -60, '20061231225959' ],
		];
	}
}