DbLogViewsTest.php

Namespace

Drupal\Tests\dblog\Functional

File

core/modules/dblog/tests/src/Functional/DbLogViewsTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\Tests\dblog\Functional;

use Drupal\views\Views;
use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;

/**
 * Verifies user access to log reports based on permissions.
 *
 * @see Drupal\dblog\Tests\DbLogTest
 */
class DbLogViewsTest extends DbLogTest {
  
  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    'dblog',
    'node',
    'help',
    'block',
    'views',
  ];
  
  /**
   * {@inheritdoc}
   */
  protected $defaultTheme = 'stark';
  
  /**
   * {@inheritdoc}
   */
  protected function getLogsEntriesTable() {
    return $this->xpath('.//div[contains(@class, "views-element-container")]//table/tbody/tr');
  }
  
  /**
   * {@inheritdoc}
   */
  protected function filterLogsEntries($type = NULL, $severity = NULL) : void {
    $query = [];
    if (isset($type)) {
      $query['type[]'] = $type;
    }
    if (isset($severity)) {
      $query['severity[]'] = $severity;
    }
    $this->drupalGet('admin/reports/dblog', [
      'query' => $query,
    ]);
  }
  
  /**
   * Tests the empty text for the watchdog view is not using an input format.
   */
  public function testEmptyText() : void {
    $view = Views::getView('watchdog');
    $data = $view->storage
      ->toArray();
    $area = $data['display']['default']['display_options']['empty']['area'];
    $this->assertEquals('text_custom', $area['plugin_id']);
    $this->assertEquals('area_text_custom', $area['field']);
    $this->assertEquals('No log messages available.', $area['content']);
  }

}

Classes

Title Deprecated Summary
DbLogViewsTest Verifies user access to log reports based on permissions.

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