модульный тест yii2 не добавляет записи в БД - PullRequest
0 голосов
/ 14 октября 2018

Помогите, пожалуйста, понять, как работают юнит-тесты в Yii2.Я написал тесты:

<?php
namespace frontend\tests\unit\models;

use Yii;
use app\models\Category;

class ContactFormTest extends \Codeception\Test\Unit
{
    public function testAddCorrect()
    {
        $model = new Category();

        $model->attributes = [
            'name' => 'Tester',
            'cpu' => 'new-tester',
            'description' => 'very important letter subject',
            'image' => 'body of current message',
        ];
        $this->assertTrue($model->save());



        $this->assertTrue($model->name === 'Tester');
        $id = $model->id;

        $newmodel = Category::find()->where(['id' => $id])->one(); 
        $this->assertTrue($newmodel->name === 'Tester');

    }

И я ожидал, что это добавит новую запись в базу данных.Но это не так.Тесты просыпаются хорошо, но отмечают добавление в БД. Я не могу понять, почему?И со способом я должен написать тест, который будет проверять модель + дБ?

unit.suit.yml

suite_namespace: frontend\tests\unit
actor: UnitTester
modules:
    enabled:
        - Yii2:
            part: [orm, email, fixtures]
        - Asserts
        - Db:
            dsn: 'mysql:host=docker.for.mac.localhost;dbname=store-light'
            user: 'ysk_dbu'
            password: 'ysk_pass'
            cleanup: false
            #            cleanup: true
...