Elgg\HooksRegistrationServiceTest::testCanUnregisterHandlers PHP Метод

testCanUnregisterHandlers() публичный Метод

    public function testCanUnregisterHandlers()
    {
        $o = new HooksRegistrationServiceTest_invokable();
        $this->mock->registerHandler('foo', 'bar', 'callback1');
        $this->mock->registerHandler('foo', 'bar', 'callback2', 100);
        $this->mock->registerHandler('foo', 'bar', 'callback2', 150);
        $this->mock->registerHandler('foo', 'bar', [$o, '__invoke'], 300);
        $this->mock->registerHandler('foo', 'bar', [$o, '__invoke'], 300);
        $this->mock->registerHandler('foo', 'bar', [$o, '__invoke'], 300);
        $this->assertTrue($this->mock->unregisterHandler('foo', 'bar', 'callback2'));
        $this->assertTrue($this->mock->unregisterHandler('foo', 'bar', HooksRegistrationServiceTest_invokable::KLASS . '::__invoke'));
        $this->assertTrue($this->mock->unregisterHandler('foo', 'bar', [HooksRegistrationServiceTest_invokable::KLASS, '__invoke']));
        $this->assertTrue($this->mock->unregisterHandler('foo', 'bar', [$o, '__invoke']));
        $expected = ['foo' => ['bar' => [500 => ['callback1'], 150 => ['callback2']]]];
        $this->assertSame($expected, $this->mock->getAllHandlers());
        // check unregistering things that aren't registered
        $this->assertFalse($this->mock->unregisterHandler('foo', 'bar', 'not_valid'));
    }