Merge "Type hint against LinkTarget in WatchedItemStore"
[lhc/web/wiklou.git] / tests / phpunit / includes / debug / DeprecationHelperTest.php
index b14d89c..25dedbc 100644 (file)
@@ -37,10 +37,8 @@ class DeprecationHelperTest extends MediaWikiTestCase {
 
        public function provideGet() {
                return [
-                       [ 'protectedDeprecated', null, null ],
                        [ 'protectedNonDeprecated', E_USER_ERROR,
                                'Cannot access non-public property TestDeprecatedClass::$protectedNonDeprecated' ],
-                       [ 'privateDeprecated', null, null ],
                        [ 'privateNonDeprecated', E_USER_ERROR,
                          'Cannot access non-public property TestDeprecatedClass::$privateNonDeprecated' ],
                        [ 'nonExistent', E_USER_NOTICE, 'Undefined property: TestDeprecatedClass::$nonExistent' ],
@@ -71,10 +69,8 @@ class DeprecationHelperTest extends MediaWikiTestCase {
 
        public function provideSet() {
                return [
-                       [ 'protectedDeprecated', null, null ],
                        [ 'protectedNonDeprecated', E_USER_ERROR,
                          'Cannot access non-public property TestDeprecatedClass::$protectedNonDeprecated' ],
-                       [ 'privateDeprecated', null, null ],
                        [ 'privateNonDeprecated', E_USER_ERROR,
                          'Cannot access non-public property TestDeprecatedClass::$privateNonDeprecated' ],
                        [ 'nonExistent', null, null ],
@@ -100,15 +96,6 @@ class DeprecationHelperTest extends MediaWikiTestCase {
        }
 
        public function testSubclassGetSet() {
-               $this->assertDeprecationWarningIssued( function () {
-                       $this->assertSame( 1, $this->testSubclass->getDeprecatedPrivateParentProperty() );
-               } );
-               $this->assertDeprecationWarningIssued( function () {
-                       $this->testSubclass->setDeprecatedPrivateParentProperty( 0 );
-               } );
-               $wrapper = TestingAccessWrapper::newFromObject( $this->testSubclass );
-               $this->assertSame( 0, $wrapper->privateDeprecated );
-
                $fullName = 'TestDeprecatedClass::$privateNonDeprecated';
                $this->assertErrorTriggered( function () {
                        $this->assertSame( null, $this->testSubclass->getNonDeprecatedPrivateParentProperty() );
@@ -165,4 +152,22 @@ class DeprecationHelperTest extends MediaWikiTestCase {
                $this->assertNotEmpty( $wrapper->deprecationWarnings );
        }
 
+       /**
+        * Test bad MW version values to throw exceptions as expected
+        *
+        * @dataProvider provideBadMWVersion
+        */
+       public function testBadMWVersion( $version, $expected ) {
+               $this->setExpectedException( $expected );
+
+               wfDeprecated( __METHOD__, $version );
+       }
+
+       public function provideBadMWVersion() {
+               return [
+                       [ 1, Exception::class ],
+                       [ 1.33, Exception::class ],
+                       [ null, Exception::class ]
+               ];
+       }
 }