vendor/topthink/framework/tests/EventTest.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace think\tests;
use Mockery as m;
use Mockery\MockInterface;
use PHPUnit\Framework\TestCase;
use think\App;
use think\Config;
use think\Container;
use think\Event;
class EventTest extends TestCase
{
/** @var App|MockInterface */
protected $app;
/** @var Event|MockInterface */
protected $event;
/** @var Config|MockInterface */
protected $config;
protected function tearDown(): void
{
m::close();
}
protected function setUp()
{
$this->app = m::mock(App::class)->makePartial();
Container::setInstance($this->app);
$this->app->shouldReceive('make')->with(App::class)->andReturn($this->app);
$this->config = m::mock(Config::class)->makePartial();
$this->app->shouldReceive('get')->with('config')->andReturn($this->config);
$this->event = new Event($this->app);
}
public function testBasic()
{
$this->event->bind(['foo' => 'baz']);
$this->event->listen('foo', function ($bar) {
$this->assertEquals('bar', $bar);
});
$this->assertTrue($this->event->hasListener('foo'));
$this->event->trigger('baz', 'bar');
$this->event->remove('foo');
$this->assertFalse($this->event->hasListener('foo'));
}
public function testOnceEvent()
{
$this->event->listen('AppInit', function ($bar) {
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。