MDL-52471 setuplib: depreciate class object properly
authorDan Poltawski <dan@moodle.com>
Thu, 10 Dec 2015 14:25:20 +0000 (14:25 +0000)
committerDan Poltawski <dan@moodle.com>
Thu, 10 Dec 2015 14:26:30 +0000 (14:26 +0000)
Previously was marked depricated but not throwwing debugging

lib/setuplib.php
lib/tests/setuplib_test.php

index 145c4a4..85ab176 100644 (file)
@@ -63,7 +63,14 @@ define('MEMORY_HUGE', -4);
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  * @deprecated since 2.0
  */
-class object extends stdClass {};
+class object extends stdClass {
+    /**
+     * Constructor.
+     */
+    public function __construct() {
+        debugging("'object' class has been deprecated, please use stdClass instead.", DEBUG_DEVELOPER);
+    }
+};
 
 /**
  * Base Moodle Exception class
index b46cd64..787e581 100644 (file)
@@ -460,4 +460,10 @@ class core_setuplib_testcase extends advanced_testcase {
             return get_exception_info($e);
         }
     }
+
+    public function test_object() {
+        $obj = new object();
+        $this->assertDebuggingCalled("'object' class has been deprecated, please use stdClass instead.");
+        $this->assertInstanceOf('stdClass', $obj);
+    }
 }