Empfehlungen: Erweiterte Suche

testAction(), Simpletest und redirect()

Daten auslesen, verarbeiten und den Views übergeben

testAction(), Simpletest und redirect()

Beitragvon CakePHPUser » Sa 25. Dez 2010, 02:46

Hallo Forum,

nach mehrstündigen versuchen wend eich mich nun an das Forum:

Ich möchte Simpletest gerne nutzen und komme eingermassen gut zurecht damit.

Nun habe ich ein Problem:
In meinem Controller habe ich in der add action ein redirect auf die index action sofern der Dataensatz gespeichert wurde:

offices_controller.php

Code: Alles auswählen
function add() {
        if (!empty($this->data)) {
            $this->Office->create();
            if ($this->Office->save($this->data)) {
                $this->Session->setFlash(__('The office has been saved', true));
                //$this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash(__('The office could not be saved. Please, try again.', true));
            }
        }
    }


In meinen Tesst habe ich nun folgendes geschrieben:
offices_controller.test.php

Code: Alles auswählen
$data = array('Office' => array('office_no' => '2100',  'office_name' => 'Test Fixture Office'));
        $result = $this->testAction('/offices/add',
                        array('fixturize' => false, 'data' => $data, 'method' => 'post'));
       
        debug($result);


Das Problem welches nun auftritt ist folgendes:
Da im eigentlichen Controller ein redirect() definiert ist wird dies von Simpletest durchgeführt und die Testergebnisse werden nicht angezeigt.

Dies ist in der Doku auch unter:
http://book.cakephp.org/view/1213/Pitfalls beschrieben.
Auch ein möglicher fix dazu wird verlinkt unter https://trac.cakephp.org/ticket/4154

Jedoch funktioniert dieser nicht wie erwartet. Die Tests werden trotzdem abgebrochen und stattdessen wird der redirect() ausgeführt.

Hat jemand von euch Erfahrung damit ?

Viele Grüße und danke für eur Unterstüzung.
CakePHPUser
 
Beiträge: 1
Registriert: Sa 25. Dez 2010, 02:32

Zurück zu Controller

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron