CakePHP 2.3 - модульное тестирование Логин пользователя

Я подумал, что должен попросить здесь помочь моей проблеме. Я'Мы провели весь вечер с этим. У меня есть метод входа вUsersController как это:

public function login() {

        if ( $this->request->is( 'post' ) ) {
            if ( $this->Auth->login() ) {
                $this->redirect( array( 'controller' => 'reservations', 'action' => 'index' ) );
            } else {
                $this->Session->setFlash( __( 'Login error.' ), 'flashError' );
            }
        }
    }

Я пытаюсь проверить это сPHPUnit, поэтому я могу быть уверен, что только действительные пользователи могут войти в систему → после успешного входа они будут перенаправлены на определенную страницу. Вот'мойtestLogin метод вUsersControllerTest учебный класс:

function testLogin() {

        $UsersController = $this->generate( 'Users', array(
                'components' => array(
                    'Auth' => array( 'user' )
                ),
            )
        );

        $UsersController->Auth->expects( $this->any() )
        ->method( 'user' )
        ->with( 'id' )
        ->will( $this->returnValue( 2 ) );

        $data = array( 'User' => array(
                'student_number' => 1111111,
                'password' => 'qwerty'
            ) );

        //$UsersController->Auth->login( $data['User'] );

        $this->testAction( '/users/login', array( 'data' => $data, 'method' => 'get' ) );
        $url = parse_url( $this->headers['Location'] );
        $this->assertEquals( $url['path'], '/reservations' );
    }

Я все еще изучаю основы модульного тестирования с CakePHP. Я получаю эту ошибку:

PHPUNIT_FRAMEWORK_ERROR_NOTICE
Undefined index: Location
Test case: UsersControllerTest(testLogin)

Я понятия не имею, что вызывает это ... Что?Что-то не так с моим методом тестирования и как это должно быть написано?

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос