Unit тестирование. Call to undefined function expect()

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
ivahaev
Сообщения: 30
Зарегистрирован: 2014.06.24, 09:12

Unit тестирование. Call to undefined function expect()

Сообщение ivahaev »

Решил, наконец-то, начать тестирование кода. Скелет advanced. Папка с тестами как бы создана. Скачать codecept.phar, запускаю в папке common:

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

./codecept.phar run
Codeception PHP Testing Framework v2.0.3
Powered by PHPUnit 4.1.4 by Sebastian Bergmann.

Unit Tests (3) --------------------------------------------------------------------------------------------------------------------------------
Trying to test login no user (common\tests\unit\models\LoginFormTest::testLoginNoUser)                                                    
PHP Fatal Error 'yii\base\ErrorException' with message 'Call to undefined function common\tests\unit\models\expect()' 

in .../common/tests/unit/models/LoginFormTest.php:44

Stack trace:
#0 [internal function]: yii\base\ErrorHandler->handleFatalError()
#1 {main}       
Собственно, ругается на вторую строчку этого:

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

        $this->specify('user should not be able to login, when there is no identity', function () use ($model) {
            expect('model should not login user', $model->login())->false();
            expect('user should not be logged in', Yii::$app->user->isGuest)->true();
        });
 
PHPStorm тоже не "узнает" функцию expect().
Что я ещё упустил?
Аватара пользователя
anton44eg
Сообщения: 2716
Зарегистрирован: 2012.01.25, 13:37
Откуда: Киев

Re: Unit тестирование. Call to undefined function expect()

Сообщение anton44eg »

а киньте ссылку на документацию про expect
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Unit тестирование. Call to undefined function expect()

Сообщение samdark »

Нужны:

https://github.com/codeception/specify
https://github.com/codeception/verify

Планируется их сунуть в codecept.phar в будущем.
ivahaev
Сообщения: 30
Зарегистрирован: 2014.06.24, 09:12

Re: Unit тестирование. Call to undefined function expect()

Сообщение ivahaev »

Спасибо! Внимательнее читать доки надо. Оно все было, но в блоке suggest, чем и смутило, т.к. с композером я не очень-то знаком.
Перекинул в require-dev, теперь все как по ману :)

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

    "suggest": {
        "codeception/codeception": "Codeception, 1.8.*@dev is currently works well with Yii.",
        "codeception/specify": "BDD style code blocks for PHPUnit and Codeception",
        "codeception/verify": "BDD Assertions for PHPUnit and Codeception",
        "yiisoft/yii2-faker": "Fixtures generator for Yii2 based on Faker lib"
    },
 
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

Re: Unit тестирование. Call to undefined function expect()

Сообщение Skiller »

Да, лучше не использовать phar, а пользоваться composer ;D
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Unit тестирование. Call to undefined function expect()

Сообщение lynicidn »

Skiller писал(а):Да, лучше не использовать phar, а пользоваться composer ;D
composer.phar? :roll:
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

Re: Unit тестирование. Call to undefined function expect()

Сообщение Skiller »

нет, я говорю не использовать codeception phar, а ставить все через composer, так проще для дебага если что и код смотреть, к тому же все остальное в fw и других 3rd party ставится через composer
Ответить