Add some tests for formatSize
authorSam Reed <reedy@users.mediawiki.org>
Sat, 31 Dec 2011 02:13:59 +0000 (02:13 +0000)
committerSam Reed <reedy@users.mediawiki.org>
Sat, 31 Dec 2011 02:13:59 +0000 (02:13 +0000)
tests/phpunit/languages/LanguageTest.php

index 401e5a3..918f931 100644 (file)
@@ -1,6 +1,10 @@
 <?php
 
 class LanguageTest extends MediaWikiTestCase {
+
+       /**
+        * @var Language
+        */
        private $lang;
 
        function setUp() {
@@ -220,4 +224,60 @@ class LanguageTest extends MediaWikiTestCase {
                        ),
                );
        }
+
+       /**
+        * @dataProvider provideFormatSizes
+        */
+       function testFormatSize( $size, $expected, $msg ) {
+               $this->assertEquals(
+                       $expected,
+                       $this->lang->formatSize( $size ),
+                       "formatSize('$size'): $msg"
+               );
+       }
+
+       function provideFormatSizes() {
+               return array(
+                       array(
+                               0,
+                               "0 B",
+                               "Zero bytes"
+                       ),
+                       array(
+                               1024,
+                               "1,024 B",
+                               "1,024 bytes"
+                       ),
+                       array(
+                               1024 + 1,
+                               "1 KB",
+                               "1 kilobyte"
+                       ),
+                       array(
+                               1024 * 1024,
+                               "1,024 KB",
+                               "1,024 kilobyte"
+                       ),
+                       array(
+                               ( 1024 * 1024 ) + 1,
+                               "1 MB",
+                               "1 megabyte"
+                       ),
+                       array(
+                               1024 * 1024 * 1024,
+                               "1,024 MB",
+                               "1,024 megabyte"
+                       ),
+                       array(
+                               ( 1024 * 1024 * 1024 ) + 1,
+                               "1 GB",
+                               "1 gigabyte"
+                       ),
+                       array(
+                               ( 1024 * 1024 * 1024 * 1024 ) + 1,
+                               "1,024 GB",
+                               "1,024 gigabyte"
+                       ),
+               );
+       }
 }