]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - t/inc/Language.t
MediaWiki 1.14.0
[autoinstallsdev/mediawiki.git] / t / inc / Language.t
1 #!/usr/bin/env php
2 <?php
3
4 require 't/Test.php';
5
6 # Test offset usage for a given language::userAdjust
7 function test_userAdjust( &$langObj, $date, $offset, $expected ) {
8         global $wgLocalTZoffset;
9         $wgLocalTZoffset = $offset;
10
11         cmp_ok(
12                 strval( $langObj->userAdjust( $date, '' ) ),
13                 '==',
14                 strval( $expected ),
15                 "User adjust {$date} by {$offset} minutes should give {$expected}"
16         );
17 }
18
19 # Collection of parameters for Language_t_Offset.
20 # Format: date to be formatted, localTZoffset value, expected date
21 $userAdjust_tests = array(
22         array( 20061231235959,   0, 20061231235959 ),
23         array( 20061231235959,   5, 20070101000459 ),
24         array( 20061231235959,  15, 20070101001459 ),
25         array( 20061231235959,  60, 20070101005959 ),
26         array( 20061231235959,  90, 20070101012959 ),
27         array( 20061231235959, 120, 20070101015959 ),
28         array( 20061231235959, 540, 20070101085959 ),
29         array( 20061231235959,  -5, 20061231235459 ),
30         array( 20061231235959, -30, 20061231232959 ),
31         array( 20061231235959, -60, 20061231225959 ),
32 );
33
34 plan( count($userAdjust_tests) );
35 define( 'MEDIAWIKI', 1 );
36
37 # Don't use require_ok as these files need global variables
38
39 require 'includes/Defines.php';
40 require 'includes/ProfilerStub.php';
41
42 require 'LocalSettings.php';
43 require 'includes/DefaultSettings.php';
44
45 require 'includes/Setup.php';
46
47 # Create a language object
48 $wgContLang = $en = Language::factory( 'en' );
49
50 global $wgUser;
51 $wgUser = new User();
52
53 # Launch tests for language::userAdjust
54 foreach( $userAdjust_tests as $data ) {
55         test_userAdjust( $en, $data[0], $data[1], $data[2] ); 
56 }
57
58 /* vim: set filetype=php: */