|
|
@@ -23,6 +23,7 @@ use Cake\Http\Response;
|
|
|
use Cake\Http\ServerRequest;
|
|
|
use Cake\Routing\Router;
|
|
|
use Cake\TestSuite\TestCase;
|
|
|
+use PHPUnit\Framework\Error\Notice;
|
|
|
use TestApp\Controller\Admin\PostsController;
|
|
|
use TestPlugin\Controller\TestPluginController;
|
|
|
|
|
|
@@ -271,7 +272,7 @@ class ControllerTest extends TestCase
|
|
|
$Controller = new Controller($request, $response);
|
|
|
$Controller->modelClass = 'SiteArticles';
|
|
|
|
|
|
- $this->assertFalse($Controller->Articles);
|
|
|
+ $this->assertFalse(isset($Controller->Articles));
|
|
|
$this->assertInstanceOf(
|
|
|
'Cake\ORM\Table',
|
|
|
$Controller->SiteArticles
|
|
|
@@ -280,7 +281,7 @@ class ControllerTest extends TestCase
|
|
|
|
|
|
$Controller->modelClass = 'Articles';
|
|
|
|
|
|
- $this->assertFalse($Controller->SiteArticles);
|
|
|
+ $this->assertFalse(isset($Controller->SiteArticles));
|
|
|
$this->assertInstanceOf(
|
|
|
'TestApp\Model\Table\ArticlesTable',
|
|
|
$Controller->Articles
|
|
|
@@ -288,6 +289,27 @@ class ControllerTest extends TestCase
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * testUndefinedPropertyError
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testUndefinedPropertyError()
|
|
|
+ {
|
|
|
+ $controller = new Controller();
|
|
|
+
|
|
|
+ $controller->Bar = true;
|
|
|
+ $this->assertTrue($controller->Bar);
|
|
|
+
|
|
|
+ $this->expectException(Notice::class);
|
|
|
+ $this->expectExceptionMessage(sprintf(
|
|
|
+ 'Undefined property: Controller::$Foo in %s on line %s',
|
|
|
+ __FILE__,
|
|
|
+ __LINE__ + 2
|
|
|
+ ));
|
|
|
+ $controller->Foo->baz();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* testLoadModel method
|
|
|
*
|
|
|
* @return void
|