<?php

namespace NoccyLabs\Ipc\Signal;





class SignalTest extends \PhpUnit\Framework\TestCase
{

    public function testSimpleSignalHandler()
    {
        $callback = function () use (&$handler1) { $handler1 = true; };

        $handler = new Signal(SIGUSR1);
        $handler->setHandler($callback);

        posix_kill(posix_getpid(), SIGUSR1);

        usleep(1000);

        $this->assertEquals(true, $handler1);
    }

    public function testSimpleSignalDispatcher()
    {
        $callback = function () use (&$handler1) { $handler1 = true; };

        $handler = new Signal(SIGUSR1);
        $handler->setHandler($callback);

        $handler->dispatch(posix_getpid());

        usleep(1000);

        $this->assertEquals(true, $handler1);
    }
    
}