vendor/topthink/framework/tests/HttpTest.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace think\tests;
use Mockery as m;
use Mockery\MockInterface;
use org\bovigo\vfs\vfsStream;
use PHPUnit\Framework\TestCase;
use think\App;
use think\Console;
use think\Event;
use think\event\HttpEnd;
use think\Exception;
use think\exception\Handle;
use think\Http;
use think\Log;
use think\Request;
use think\Response;
use think\Route;
class HttpTest extends TestCase
{
/** @var App|MockInterface */
protected $app;
/** @var Http|MockInterface */
protected $http;
protected function tearDown(): void
{
m::close();
}
protected function setUp()
{
$this->app = m::mock(App::class)->makePartial();
$this->http = m::mock(Http::class, [$this->app])->shouldAllowMockingProtectedMethods()->makePartial();
}
protected function prepareApp($request, $response)
{
$this->app->shouldReceive('instance')->once()->with('request', $request);
$this->app->shouldReceive('initialized')->once()->andReturnFalse();
$this->app->shouldReceive('initialize')->once();
$this->app->shouldReceive('get')->with('request')->andReturn($request);
$route = m::mock(Route::class);
$route->shouldReceive('dispatch')->withArgs(function ($req, $withRoute) use ($request) {
if ($withRoute) {
$withRoute();
}
return $req === $request;
})->andReturn($response);
$route->shouldReceive('config')->with('route_annotation')->andReturn(true);
$this->app->shouldReceive('get')->with('route')->andReturn($route);
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。