• Willkommen im Zend Framework Forum

    ZF1 Zend Framework 1 + ZF2 Zend Framework 2

    Das Zend Framework Forum ist seit 2006 die erste Anlaufstelle für Zend Framework Entwickler in Deutschland. Mit über 70.000 Beiträgen und einer steigenden Nutzerzahl bietet das Forum hilfreiche Themen und ZF-Tutorials für professionelle Entwickler, fortgeschrittene Programmierer sowie Zend Framework Einsteiger.
    Wenn dies Dein erster Besuch in der Zend Framework Community ist, lies bitte zuerst die Hilfe - FAQ durch. Du musst Dich registrieren, bevor Du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um die Registrierung zu starten. Du kannst auch jetzt schon Beiträge lesen. Hier im Forum findest Du die Zend Framework Hilfe, die Du suchst!

    Grüße an alle Zend Framework Entwickler. Das Team vom Zend Framework Forum!

    Drupal Agentur

PHPunit - Session Destroy funktioniert nicht

Ich bin gerade an PHPunit. Dabei habe ich jetzt das Problem, dass beim Logout, die Session gelöscht wird. Das funktioniert im Browser super. Bloß nicht in PHPunit.

AuthenticationListener - Methode Logout
PHP:
$this->_oSessionManager->destroy();
$this->_oSessionManager->forgetMe();
Wenn ich jetzt den Logout-Teste, dann erhalte ich die Fehlermeldung:
Code:
session_destroy(): Trying to destroy uninitialized session
Wenn ich selber einen session_start() in die Test-Methode einfüge, dann wird gesagt, dass die Session schon gestartet wurde. Wo könnte das Problem noch liegen? Wie muss ich die Session initialisieren mit PHPunit?

Test-Methode
PHP:
public function testLogoutSuccesfully()
        {
            $this->mockLogin('abc');

            $sUrl = '/de/user/add';

            $this->dispatch($sUrl, 'GET');
            $this->assertResponseStatusCode(200);

            $aPostArray = array('logout' => 'logout');

            $this->getRequest()
                 ->setMethod('POST')
                 ->setPost(new Parameters($aPostArray));

            $this->dispatch($sUrl, 'POST');
            $this->assertResponseStatusCode(200);
        }
 

Kaiuwe

Super-Moderator
Wo könnte das Problem noch liegen?
Leider kann niemand dein Problem nachvollziehen. Die Code-Auszüge verbergen mehr als sie aussagen.

Was ist zum Beispiel:

  • „AuthenticationListener“
  • „$this->mockLogin('abc')“
Wieso muss bei einer Abmeldung einmal die Abfrage per „GET“ und einmal per „POST“ durchgeführt werden? :confused:

(Bitte vergiss nicht, nur du kannst auf deinen Bildschirm schauen. Wir sehen absolut nichts davon!)
 
Oben