ConfigExportTest.php

Same filename in other branches
  1. 10 core/modules/config/tests/src/FunctionalJavascript/ConfigExportTest.php
  2. 11.x core/modules/config/tests/src/FunctionalJavascript/ConfigExportTest.php

Namespace

Drupal\Tests\config\FunctionalJavascript

File

core/modules/config/tests/src/FunctionalJavascript/ConfigExportTest.php

View source
<?php

namespace Drupal\Tests\config\FunctionalJavascript;

use Drupal\FunctionalJavascriptTests\WebDriverTestBase;

/**
 * Tests the config export form.
 *
 * @group config
 */
class ConfigExportTest extends WebDriverTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'config',
        'system',
    ];
    
    /**
     * {@inheritdoc}
     */
    protected $defaultTheme = 'stark';
    
    /**
     * Tests Ajax form functionality on the config export page.
     */
    public function testAjaxOnExportPage() {
        $this->drupalLogin($this->drupalCreateUser([
            'export configuration',
        ]));
        $page = $this->getSession()
            ->getPage();
        // Check that the export is empty on load.
        $this->drupalGet('admin/config/development/configuration/single/export');
        $this->assertSession()
            ->fieldValueEquals('export', '');
        // Check that the export is filled when selecting a config name.
        $page->selectFieldOption('config_name', 'system.site');
        $this->assertSession()
            ->assertWaitOnAjaxRequest();
        $this->assertSession()
            ->fieldValueNotEquals('export', '');
        // Check that the export is emptied again when selecting a config type.
        $page->selectFieldOption('config_type', 'Action');
        $this->assertSession()
            ->assertWaitOnAjaxRequest();
        $this->assertSession()
            ->fieldValueEquals('export', '');
    }

}

Classes

Title Deprecated Summary
ConfigExportTest Tests the config export form.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.