|
- <?php
-
- use CodeIgniter\Test\CIUnitTestCase;
- use CodeIgniter\Test\DatabaseTestTrait;
- use Tests\Support\Database\Seeds\ExampleSeeder;
- use Tests\Support\Models\ExampleModel;
-
- /**
- * @internal
- */
- final class ExampleDatabaseTest extends CIUnitTestCase
- {
- use DatabaseTestTrait;
-
- protected $seed = ExampleSeeder::class;
-
- public function testModelFindAll()
- {
- $model = new ExampleModel();
-
- // Get every row created by ExampleSeeder
- $objects = $model->findAll();
-
- // Make sure the count is as expected
- $this->assertCount(3, $objects);
- }
-
- public function testSoftDeleteLeavesRow()
- {
- $model = new ExampleModel();
- $this->setPrivateProperty($model, 'useSoftDeletes', true);
- $this->setPrivateProperty($model, 'tempUseSoftDeletes', true);
-
- $object = $model->first();
- $model->delete($object->id);
-
- // The model should no longer find it
- $this->assertNull($model->find($object->id));
-
- // ... but it should still be in the database
- $result = $model->builder()->where('id', $object->id)->get()->getResult();
-
- $this->assertCount(1, $result);
- }
- }
|