function ExampleFixtureManagementTest::setUp

Same name in other branches
  1. 3.x modules/testing_example/tests/src/Kernel/ExampleFixtureManagementTest.php \Drupal\Tests\testing_example\Kernel\ExampleFixtureManagementTest::setUp()
  2. 4.0.x modules/testing_example/tests/src/Kernel/ExampleFixtureManagementTest.php \Drupal\Tests\testing_example\Kernel\ExampleFixtureManagementTest::setUp()

Use setUp() to do anything that is common to all the tests in this class.

Group tests in a class so they can take advantage of setUp() activities as much as possible.

In a Kernel test, setUp() can be responsible for creating any schema or database configuration which must exist for the test.

File

testing_example/tests/src/Kernel/ExampleFixtureManagementTest.php, line 61

Class

ExampleFixtureManagementTest
Demonstrate manipulating fixture data in a kernel test.

Namespace

Drupal\Tests\testing_example\Kernel

Code

protected function setUp() {
    parent::setUp();
    // Since kernel tests do not install modules, we have to install whatever
    // schema and config we expect to be present in those modules.
    //
    // Figuring out what schema and EntitySchema and config to install is not
    // always easy. Use core kernel tests for examples. The baseline is that you
    // have to install everything in the database that is needed.
    //
    // Sequences table is prerequisite of the 'node' schema.
    $this->installSchema('system', [
        'sequences',
    ]);
    // Install *module* schema for node/user modules.
    $this->installSchema('node', [
        'node_access',
    ]);
    $this->installSchema('user', [
        'users_data',
    ]);
    // Install *entity* schema for the node entity.
    $this->installEntitySchema('node');
    $this->installEntitySchema('user');
    // Install any config provided by the enabled.
    $this->installConfig([
        'field',
        'node',
        'text',
        'filter',
        'user',
    ]);
    // Finally, create an 'owner' account.
    $this->owner = $this->createUser([], 'testuser');
}