OSDN Git Service

Добавлен тест модели размещений.
[invent/invent.git] / tests / unit / models / TypesTest.php
1 <?php
2
3 namespace tests\unit\models;
4
5 use app\models\Types;
6
7 class TypesTest extends \Codeception\Test\Unit
8 {
9     private $types;
10     /**
11      * @var \UnitTester
12      */
13     protected $tester;
14
15     protected function _before()
16     {
17         $this->types = new Types();
18     }
19
20     protected function _after()
21     {
22     }
23
24     public function testEnterNull()
25     {
26         // Пустое значение недопустимо
27         $this->types->name = NULL;
28         $this->assertFalse($this->types->validate([ 'name' ]));
29     }
30
31     public function testEnterAbove100()
32     {
33         // Больше 100 символов недопустимо
34         $this->types->name = '**** ' . str_repeat('a', 100) . ' ****';
35         $this->assertFalse($this->types->validate([ 'name' ]));
36     }
37
38     // tests
39     public function testEnterData()
40     {
41         $validName = '--TEST TYPE--';
42         // Допустимая комбинация
43         $this->types->name = $validName;
44         $this->assertTrue($this->types->validate([ 'name' ]));
45
46         // Сохранение данных в базу
47         $this->assertTrue($this->types->save());
48         $count = count(Types::find()->where([ 'name' => $validName ])->all());
49         $this->assertGreaterThan(0, $count);
50         $this->assertEquals(1, $count);
51 #        $this->tester->seeInDatabase('types', [ 'name' => $validName ]); // ищет в реальной базе данных, а не в тестовой.
52     }
53 }