Codeception / module-phalcon4

Phalcon 4 module for Codeception
https://codeception.com/docs/modules/Phalcon4
MIT License
3 stars 8 forks source link

SessionManager methods missing #13

Open krazzer opened 3 years ago

krazzer commented 3 years ago

When my tests tried to run a test that involved a session destroy, I got an error. Because MemorySession.php doesn't actually start the session using session_start, session_destroy doesn't work either.

Also, MemorySession.php's get and set methods aren't actually used, because the get and set are called from SessionManager.php.

I fixed this by adding methods to SessionManager.php:

class SessionManager extends Manager
{
    //...

    public function destroy(): void
    {
        $this->getAdapter()->destroy($this->getId());
    }

    public function get(string $key, $defaultValue = null, bool $remove = false)
    {
        return $this->getAdapter()->get($key, $defaultValue, $remove);
    }

    public function set(string $key, $value): void
    {
        $this->getAdapter()->set($key, $value);
    }
}

Please let me know if this is correct, or if I'm missing something.