Запуск теста в NetBeans

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
vladimircape
Сообщения: 339
Зарегистрирован: 2012.05.29, 16:31

Запуск теста в NetBeans

Сообщение vladimircape »

Когда запускаю на сервере всё проходит нормально, при запуске локально через NetBeans, ругается на Yii::app()->user->id = 67;
ChannelsTest::testGetChannels()
session_start(): Cannot send session cookie - headers already sent by (output started at C:\apache\29Club\protected\config\main.php:1)
Ниже кусок кода

Код: Выделить всё

class ChannelsTest extends CTestCase {

    /**
     *
     * @var Channels
     */
    private $Channels;

    /**
     * Prepares the environment before running a test.
     */
    protected function setUp() {
        Yii::app()->user->id = 67;
        $this->Channels = new Channels(/* parameters */);
                parent::setUp ();
    }

    /**
     * Cleans up the environment after running a test.
     */
    protected function tearDown() {
        $this->Channels = null;

        parent::tearDown ();
    }

    /**
     * Constructs the test case.
     */
    public function __construct() {
    }
 
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

Re: Запуск теста в NetBeans

Сообщение Skiller »

все верно, CWebUser же к сессии обращается, а phpunit стартует дамп как только, так сразу, используйте либо мокнутый User ваш, либо напрямую создавайте класс User.
vladimircape
Сообщения: 339
Зарегистрирован: 2012.05.29, 16:31

Re: Запуск теста в NetBeans

Сообщение vladimircape »

Skiller писал(а):все верно, CWebUser же к сессии обращается, а phpunit стартует дамп как только, так сразу, используйте либо мокнутый User ваш, либо напрямую создавайте класс User.
Я просто перенёс Yii::app()->user->id = 67; в конструктор и все заработало, хотя странно почему не заработало в setUp методе
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

Re: Запуск теста в NetBeans

Сообщение Skiller »

потому что в CWebUser сессия вызывается же :S
Ответить