class DateRecurViewsOccurrenceFilterTest in Recurring Dates Field 8.2
Same name and namespace in other branches
- 3.x tests/src/Kernel/DateRecurViewsOccurrenceFilterTest.php \Drupal\Tests\date_recur\Kernel\DateRecurViewsOccurrenceFilterTest
- 3.0.x tests/src/Kernel/DateRecurViewsOccurrenceFilterTest.php \Drupal\Tests\date_recur\Kernel\DateRecurViewsOccurrenceFilterTest
- 3.1.x tests/src/Kernel/DateRecurViewsOccurrenceFilterTest.php \Drupal\Tests\date_recur\Kernel\DateRecurViewsOccurrenceFilterTest
Tests the results of 'date_recur_occurrences_filter' filter plugin.
Tests with a base field.
@coversDefaultClass \Drupal\date_recur\Plugin\views\filter\DateRecurFilter
@group date_recur
Hierarchy
- class \Drupal\KernelTests\KernelTestBase extends \PHPUnit\Framework\TestCase implements ServiceProviderInterface uses AssertContentTrait, AssertLegacyTrait, AssertHelperTrait, ConfigTestTrait, PhpunitCompatibilityTrait, RandomGeneratorTrait, TestRequirementsTrait
- class \Drupal\Tests\views\Kernel\ViewsKernelTestBase uses ViewResultAssertionTrait
- class \Drupal\Tests\date_recur\Kernel\DateRecurViewsOccurrenceFilterTest
- class \Drupal\Tests\views\Kernel\ViewsKernelTestBase uses ViewResultAssertionTrait
Expanded class hierarchy of DateRecurViewsOccurrenceFilterTest
File
- tests/
src/ Kernel/ DateRecurViewsOccurrenceFilterTest.php, line 20
Namespace
Drupal\Tests\date_recur\KernelView source
class DateRecurViewsOccurrenceFilterTest extends ViewsKernelTestBase {
/**
* {@inheritdoc}
*/
public static $modules = [
'date_recur_entity_test',
'date_recur_views_test',
'entity_test',
'datetime',
'datetime_range',
'date_recur',
'field',
'user',
];
/**
* {@inheritdoc}
*/
public static $testViews = [
'dr_entity_test_list',
];
/**
* Field mapping for testing.
*
* @var array
*/
protected $map;
/**
* Name of field for testing.
*
* @var string
*/
protected $fieldName;
/**
* {@inheritdoc}
*/
protected function setUp($import_test_views = TRUE) {
parent::setUp(FALSE);
$this
->installEntitySchema('dr_entity_test');
ViewTestData::createTestViews(get_class($this), [
'date_recur_views_test',
]);
$this->map = [
'id' => 'id',
];
// This is the name of the pre-installed base field.
$this->fieldName = 'dr';
$user = User::create([
'uid' => 2,
'timezone' => 'Australia/Sydney',
]);
$this->container
->get('current_user')
->setAccount($user);
}
/**
* Tests date recur filter plugin.
*/
public function testDateRecurFilterAbsoluteYear() {
// Testing around 2008.
$entity1 = $this
->createEntity();
$entity1->{$this->fieldName} = [
[
// Before 2008.
'value' => '2007-12-12T23:00:00',
'end_value' => '2007-12-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity1
->save();
$entity2 = $this
->createEntity();
$entity2->{$this->fieldName} = [
[
// Intersecting start of 2008.
'value' => '2007-12-12T23:00:00',
'end_value' => '2008-01-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity2
->save();
$entity3 = $this
->createEntity();
$entity3->{$this->fieldName} = [
[
// Within 2008.
'value' => '2008-02-12T23:00:00',
'end_value' => '2008-02-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity3
->save();
$entity4 = $this
->createEntity();
$entity4->{$this->fieldName} = [
[
// Intersecting end of 2008.
'value' => '2008-12-30T23:00:00',
'end_value' => '2009-01-02T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity4
->save();
$entity5 = $this
->createEntity();
$entity5->{$this->fieldName} = [
[
// After 2008.
'value' => '2009-01-02T23:00:00',
'end_value' => '2009-01-03T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity5
->save();
$entity6 = $this
->createEntity();
$entity6->{$this->fieldName} = [
[
// Covering entirety of 2008.
'value' => '2007-12-02T23:00:00',
'end_value' => '2009-01-03T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity6
->save();
$exposedIdentifier = $this->fieldName . '_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
'value_granularity' => 'year',
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => $this->fieldName . '_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
// Input values are in the users timezone.
$this
->assertFilter([
$exposedIdentifier => '2006',
], [], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2007',
], [
[
'id' => $entity1
->id(),
],
[
'id' => $entity2
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2008',
], [
[
'id' => $entity2
->id(),
],
[
'id' => $entity3
->id(),
],
[
'id' => $entity4
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2009',
], [
[
'id' => $entity4
->id(),
],
[
'id' => $entity5
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2010',
], [], $filterOptions);
}
/**
* Tests date recur filter plugin.
*/
public function testDateRecurFilterAbsoluteMonth() {
// Testing around September 2014.
$entity1 = $this
->createEntity();
$entity1->{$this->fieldName} = [
[
// Before Sept 2014.
'value' => '2014-08-12T23:00:00',
'end_value' => '2014-08-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity1
->save();
$entity2 = $this
->createEntity();
$entity2->{$this->fieldName} = [
[
// Intersecting start of Sept 2014.
'value' => '2014-08-29T23:00:00',
'end_value' => '2014-09-02T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity2
->save();
$entity3 = $this
->createEntity();
$entity3->{$this->fieldName} = [
[
// Within Sept 2014.
'value' => '2014-09-12T23:00:00',
'end_value' => '2014-09-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity3
->save();
$entity4 = $this
->createEntity();
$entity4->{$this->fieldName} = [
[
// Intersecting end of Sept 2014.
'value' => '2014-09-29T23:00:00',
'end_value' => '2014-10-02T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity4
->save();
$entity5 = $this
->createEntity();
$entity5->{$this->fieldName} = [
[
// After Sept 2014.
'value' => '2014-10-12T23:00:00',
'end_value' => '2014-10-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity5
->save();
$entity6 = $this
->createEntity();
$entity6->{$this->fieldName} = [
[
// Covering entirety of Sept 2014.
'value' => '2014-08-12T23:00:00',
'end_value' => '2014-10-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity6
->save();
$exposedIdentifier = 'dr_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
'value_granularity' => 'month',
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => 'dr_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
// Input values are in the users timezone.
$this
->assertFilter([
$exposedIdentifier => '2014-07',
], [], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-08',
], [
[
'id' => $entity1
->id(),
],
[
'id' => $entity2
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-09',
], [
[
'id' => $entity2
->id(),
],
[
'id' => $entity3
->id(),
],
[
'id' => $entity4
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-10',
], [
[
'id' => $entity4
->id(),
],
[
'id' => $entity5
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-11',
], [], $filterOptions);
}
/**
* Tests date recur filter plugin.
*/
public function testDateRecurFilterAbsoluteDay() {
// Testing around 13 September 2014 in users local timezone.
$entity1 = $this
->createEntity();
$entity1->{$this->fieldName} = [
[
// Before 13 September 2014.
'value' => '2014-09-11T23:00:00',
'end_value' => '2014-09-12T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity1
->save();
$entity2 = $this
->createEntity();
$entity2->{$this->fieldName} = [
[
// Intersecting start of 13 September 2014.
// 11pm 12 September 2014.
'value' => '2014-09-12T13:00:00',
// 1am 13 September 2014.
'end_value' => '2014-09-12T15:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity2
->save();
$entity3 = $this
->createEntity();
$entity3->{$this->fieldName} = [
[
// Within 13 September 2014.
// 2am 13 September 2014.
'value' => '2014-09-12T16:00:00',
// 4am 13 September 2014.
'end_value' => '2014-09-12T18:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity3
->save();
$entity4 = $this
->createEntity();
$entity4->{$this->fieldName} = [
[
// Intersecting end of 13 September 2014.
// 10pm 13 September 2014.
'value' => '2014-09-13T12:00:00',
// 2am 14 September 2014.
'end_value' => '2014-09-13T16:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity4
->save();
$entity5 = $this
->createEntity();
$entity5->{$this->fieldName} = [
[
// After 13 September 2014.
// 2am 14 September 2014.
'value' => '2014-09-13T16:00:00',
// 4am 14 September 2014.
'end_value' => '2014-09-13T18:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity5
->save();
$entity6 = $this
->createEntity();
$entity6->{$this->fieldName} = [
[
// Covering entirety of 13 September 2014.
// 11pm 12 September 2014.
'value' => '2014-09-12T13:00:00',
// 4am 14 September 2014.
'end_value' => '2014-09-13T18:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '0',
'timezone' => 'Australia/Sydney',
],
];
$entity6
->save();
$exposedIdentifier = 'dr_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
'value_granularity' => 'day',
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => 'dr_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
// Input values are in the users timezone.
$this
->assertFilter([
$exposedIdentifier => '2014-09-11',
], [], $filterOptions, 'day before');
$this
->assertFilter([
$exposedIdentifier => '2014-09-12',
], [
[
'id' => $entity1
->id(),
],
[
'id' => $entity2
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-09-13',
], [
[
'id' => $entity2
->id(),
],
[
'id' => $entity3
->id(),
],
[
'id' => $entity4
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-09-14',
], [
[
'id' => $entity4
->id(),
],
[
'id' => $entity5
->id(),
],
[
'id' => $entity6
->id(),
],
], $filterOptions);
$this
->assertFilter([
$exposedIdentifier => '2014-09-15',
], [], $filterOptions, 'day after');
}
/**
* Tests date recur filter plugin.
*/
public function testDateRecurFilterAbsoluteSecond() {
$entity = $this
->createEntity();
$entity->{$this->fieldName} = [
[
// 13 Sept 2014, 9-5am.
'value' => '2014-09-12T23:00:00',
'end_value' => '2014-09-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '1',
'timezone' => 'Australia/Sydney',
],
];
$entity
->save();
// Decoy.
$entity2 = $this
->createEntity();
$entity2->{$this->fieldName} = [
[
// 14 Sept 2014, 9-5am.
'value' => '2014-09-13T23:00:00',
'end_value' => '2014-09-14T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '1',
'timezone' => 'Australia/Sydney',
],
];
$entity2
->save();
$exposedIdentifier = 'dr_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
'value_granularity' => 'second',
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => 'dr_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
$expectedRowWithEntity = [
[
'id' => $entity
->id(),
],
];
// Input values are in the users timezone.
$this
->assertFilter([
$exposedIdentifier => '2014-09-13T08:59:59',
], [], $filterOptions, 'before occurrence, no match');
$this
->assertFilter([
$exposedIdentifier => '2014-09-13T09:00:00',
], $expectedRowWithEntity, $filterOptions, 'start of occurrence, match');
$this
->assertFilter([
$exposedIdentifier => '2014-09-13T09:01:00',
], $expectedRowWithEntity, $filterOptions, 'within occurrence, match');
$this
->assertFilter([
$exposedIdentifier => '2014-09-13T17:00:00',
], $expectedRowWithEntity, $filterOptions, 'end of occurrence, match');
$this
->assertFilter([
$exposedIdentifier => '2014-09-13T17:00:01',
], [], $filterOptions, 'after occurrence, no match');
}
/**
* Tests timezone capability for non second granularity.
*
* There is different handling of timezones for seconds vs other
* granularities.
*/
public function testDateRecurFilterTimezoneNonSecond() {
$entity = $this
->createEntity();
$entity->{$this->fieldName} = [
[
// 13 Sept 2014, 9-5am.
'value' => '2014-09-12T23:00:00',
'end_value' => '2014-09-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '1',
'timezone' => 'Australia/Sydney',
],
];
$entity
->save();
$exposedIdentifier = 'dr_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
// Doesnt matter which granularity, so long as it is not seconds.
'value_granularity' => 'day',
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => 'dr_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
$expectedRowWithEntity = [
[
'id' => $entity
->id(),
],
];
// Input values are in the users timezone.
$this
->assertFilter([
$exposedIdentifier => '2014-09-12',
], [], $filterOptions, 'no match previous day');
$this
->assertFilter([
$exposedIdentifier => '2014-09-13',
], $expectedRowWithEntity, $filterOptions, 'match current day');
$this
->assertFilter([
$exposedIdentifier => '2014-09-14',
], [], $filterOptions, 'no match folowing day');
}
/**
* Tests date recur filter plugin.
*
* If asserting successful validation, the raw input must be set up to return
* one result matching the test entity.
*
* @param string $granularity
* Granularity.
* @param string $rawInput
* User input.
* @param bool $successfulValidate
* Whether the validation was successful.
*
* @dataProvider providerInvalidInput
*/
public function testInvalidInput($granularity, $rawInput, $successfulValidate) {
// Create a test entity.
$entity = $this
->createEntity();
$entity->{$this->fieldName} = [
[
'value' => '2014-09-12T23:00:00',
'end_value' => '2014-09-13T07:00:00',
'rrule' => 'FREQ=DAILY;COUNT=1',
'infinite' => '1',
'timezone' => 'Australia/Sydney',
],
];
$entity
->save();
$exposedIdentifier = 'dr_occurrences';
$filterOptions = [
'operator' => '=',
'value' => '',
'value_granularity' => $granularity,
'exposed' => TRUE,
'expose' => [
'identifier' => $exposedIdentifier,
'operator' => 'dr_occurrences_op',
'use_operator' => FALSE,
'required' => FALSE,
],
];
$input = [
$exposedIdentifier => $rawInput,
];
/** @var \Drupal\views\ViewEntityInterface $view */
$view = View::load('dr_entity_test_list');
$executable = $view
->getExecutable();
$executable
->addHandler('default', 'filter', 'dr_entity_test', $this->fieldName . '_occurrences', $filterOptions);
$executable
->setExposedInput($input);
$executable
->execute();
if ($successfulValidate) {
$this
->assertTrue(!isset($executable->build_info['abort']));
$expectedRowWithEntity = [
[
'id' => $entity
->id(),
],
];
$this
->assertFilter($input, $expectedRowWithEntity, $filterOptions);
}
else {
$this
->assertTrue(isset($executable->build_info['abort']));
}
}
/**
* Data provider for testInvalidInput.
*
* @return array
* Data for testing.
*/
public function providerInvalidInput() {
$data = [];
$data['year success 1'] = [
'year',
'2014',
TRUE,
];
$data['year failure 2'] = [
'year',
'205',
FALSE,
];
$data['year failure 3'] = [
'year',
'20145',
FALSE,
];
$data['month success 1'] = [
'month',
'2014-09',
TRUE,
];
$data['month failure 2'] = [
'month',
'2014-9',
FALSE,
];
$data['month failure 4'] = [
'month',
'2014-090',
FALSE,
];
$data['day success 1'] = [
'day',
'2014-09-13',
TRUE,
];
$data['day failure 2'] = [
'day',
'2014-09-3',
FALSE,
];
$data['day failure 3'] = [
'day',
'2014-09-113',
FALSE,
];
$data['second success 1'] = [
'second',
'2014-09-13T12:59:59',
TRUE,
];
$data['second failure 2'] = [
'second',
'2014-09-13T121:59:59',
FALSE,
];
$data['second failure 3'] = [
'second',
'2014-09-13T12:599:59',
FALSE,
];
$data['second failure 4'] = [
'second',
'2014-09-13T12:59:599',
FALSE,
];
return $data;
}
/**
* Creates an unsaved test entity.
*
* @return \Drupal\date_recur_entity_test\Entity\DrEntityTest
* A test entity.
*/
protected function createEntity() {
return DrEntityTest::create();
}
/**
* Asserts the filter plugin.
*
* @param array $input
* Input for exposed filters.
* @param array $expectedResult
* The expected result.
* @param array $filterOptions
* Options to set via exposed inputs.
* @param string|null $message
* Message for phpunit.
*/
protected function assertFilter(array $input, array $expectedResult, array $filterOptions, $message = NULL) {
/** @var \Drupal\views\ViewEntityInterface $view */
$view = View::load('dr_entity_test_list');
$executable = $view
->getExecutable();
$executable
->addHandler('default', 'filter', 'dr_entity_test', $this->fieldName . '_occurrences', $filterOptions);
$executable
->setExposedInput($input);
$this
->executeView($executable);
$this
->assertCount(count($expectedResult), $executable->result);
$this
->assertIdenticalResultset($executable, $expectedResult, $this->map, $message);
// Must be destroyed after each run.
$executable
->destroy();
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AssertContentTrait:: |
protected | property | The current raw content. | |
AssertContentTrait:: |
protected | property | The drupalSettings value from the current raw $content. | |
AssertContentTrait:: |
protected | property | The XML structure parsed from the current raw $content. | 1 |
AssertContentTrait:: |
protected | property | The plain-text content of raw $content (text nodes). | |
AssertContentTrait:: |
protected | function | Passes if the raw text IS found escaped on the loaded page, fail otherwise. | |
AssertContentTrait:: |
protected | function | Asserts that a field exists with the given name or ID. | |
AssertContentTrait:: |
protected | function | Asserts that a field exists with the given ID and value. | |
AssertContentTrait:: |
protected | function | Asserts that a field exists with the given name and value. | |
AssertContentTrait:: |
protected | function | Asserts that a field exists in the current page by the given XPath. | |
AssertContentTrait:: |
protected | function | Asserts that a checkbox field in the current page is checked. | |
AssertContentTrait:: |
protected | function | Asserts that a field exists in the current page with a given Xpath result. | |
AssertContentTrait:: |
protected | function | Passes if a link with the specified label is found. | |
AssertContentTrait:: |
protected | function | Passes if a link containing a given href (part) is found. | |
AssertContentTrait:: |
protected | function | Asserts that each HTML ID is used for just a single element. | |
AssertContentTrait:: |
protected | function | Passes if the raw text IS NOT found escaped on the loaded page, fail otherwise. | |
AssertContentTrait:: |
protected | function | Asserts that a field does not exist with the given name or ID. | |
AssertContentTrait:: |
protected | function | Asserts that a field does not exist with the given ID and value. | |
AssertContentTrait:: |
protected | function | Asserts that a field does not exist with the given name and value. | |
AssertContentTrait:: |
protected | function | Asserts that a field does not exist or its value does not match, by XPath. | |
AssertContentTrait:: |
protected | function | Asserts that a checkbox field in the current page is not checked. | |
AssertContentTrait:: |
protected | function | Passes if a link with the specified label is not found. | |
AssertContentTrait:: |
protected | function | Passes if a link containing a given href (part) is not found. | |
AssertContentTrait:: |
protected | function | Passes if a link containing a given href is not found in the main region. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page does not exist. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page is not checked. | |
AssertContentTrait:: |
protected | function | Triggers a pass if the perl regex pattern is not found in raw content. | |
AssertContentTrait:: |
protected | function | Passes if the raw text is NOT found on the loaded page, fail otherwise. | |
AssertContentTrait:: |
protected | function | Passes if the page (with HTML stripped) does not contains the text. | |
AssertContentTrait:: |
protected | function | Pass if the page title is not the given string. | |
AssertContentTrait:: |
protected | function | Passes if the text is found MORE THAN ONCE on the text version of the page. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page exists. | |
AssertContentTrait:: |
protected | function | Asserts that a select option with the visible text exists. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page is checked. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page is checked. | |
AssertContentTrait:: |
protected | function | Asserts that a select option in the current page exists. | |
AssertContentTrait:: |
protected | function | Triggers a pass if the Perl regex pattern is found in the raw content. | |
AssertContentTrait:: |
protected | function | Passes if the raw text IS found on the loaded page, fail otherwise. | |
AssertContentTrait:: |
protected | function | Passes if the page (with HTML stripped) contains the text. | |
AssertContentTrait:: |
protected | function | Helper for assertText and assertNoText. | |
AssertContentTrait:: |
protected | function | Asserts that a Perl regex pattern is found in the plain-text content. | |
AssertContentTrait:: |
protected | function | Asserts themed output. | |
AssertContentTrait:: |
protected | function | Pass if the page title is the given string. | |
AssertContentTrait:: |
protected | function | Passes if the text is found ONLY ONCE on the text version of the page. | |
AssertContentTrait:: |
protected | function | Helper for assertUniqueText and assertNoUniqueText. | |
AssertContentTrait:: |
protected | function | Builds an XPath query. | |
AssertContentTrait:: |
protected | function | Helper: Constructs an XPath for the given set of attributes and value. | |
AssertContentTrait:: |
protected | function | Searches elements using a CSS selector in the raw content. | |
AssertContentTrait:: |
protected | function | Get all option elements, including nested options, in a select. | |
AssertContentTrait:: |
protected | function | Gets the value of drupalSettings for the currently-loaded page. | |
AssertContentTrait:: |
protected | function | Gets the current raw content. | |
AssertContentTrait:: |
protected | function | Get the selected value from a select field. | |
AssertContentTrait:: |
protected | function | Retrieves the plain-text content from the current raw content. | |
AssertContentTrait:: |
protected | function | Get the current URL from the cURL handler. | 1 |
AssertContentTrait:: |
protected | function | Parse content returned from curlExec using DOM and SimpleXML. | |
AssertContentTrait:: |
protected | function | Removes all white-space between HTML tags from the raw content. | |
AssertContentTrait:: |
protected | function | Sets the value of drupalSettings for the currently-loaded page. | |
AssertContentTrait:: |
protected | function | Sets the raw content (e.g. HTML). | |
AssertContentTrait:: |
protected | function | Performs an xpath search on the contents of the internal browser. | |
AssertHelperTrait:: |
protected static | function | Casts MarkupInterface objects into strings. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertTrue() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertEquals() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertSame() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertEquals() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertNotEquals() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertNotSame() instead. | |
AssertLegacyTrait:: |
protected | function | Deprecated Scheduled for removal in Drupal 10.0.0. Use self::assertTrue() instead. | |
AssertLegacyTrait:: |
protected | function | ||
ConfigTestTrait:: |
protected | function | Returns a ConfigImporter object to import test configuration. | |
ConfigTestTrait:: |
protected | function | Copies configuration objects from source storage to target storage. | |
DateRecurViewsOccurrenceFilterTest:: |
protected | property | Name of field for testing. | |
DateRecurViewsOccurrenceFilterTest:: |
protected | property | Field mapping for testing. | |
DateRecurViewsOccurrenceFilterTest:: |
public static | property |
Modules to enable. Overrides ViewsKernelTestBase:: |
|
DateRecurViewsOccurrenceFilterTest:: |
public static | property |
Views to be enabled. Overrides ViewsKernelTestBase:: |
1 |
DateRecurViewsOccurrenceFilterTest:: |
protected | function | Asserts the filter plugin. | |
DateRecurViewsOccurrenceFilterTest:: |
protected | function | Creates an unsaved test entity. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Data provider for testInvalidInput. | |
DateRecurViewsOccurrenceFilterTest:: |
protected | function |
Overrides ViewsKernelTestBase:: |
1 |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests date recur filter plugin. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests date recur filter plugin. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests date recur filter plugin. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests date recur filter plugin. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests timezone capability for non second granularity. | |
DateRecurViewsOccurrenceFilterTest:: |
public | function | Tests date recur filter plugin. | |
KernelTestBase:: |
protected | property | Back up and restore any global variables that may be changed by tests. | |
KernelTestBase:: |
protected | property | Back up and restore static class properties that may be changed by tests. | |
KernelTestBase:: |
protected | property | Contains a few static class properties for performance. | |
KernelTestBase:: |
protected | property | ||
KernelTestBase:: |
protected | property | @todo Move into Config test base class. | 7 |
KernelTestBase:: |
protected static | property | An array of config object names that are excluded from schema checking. | |
KernelTestBase:: |
protected | property | ||
KernelTestBase:: |
protected | property | ||
KernelTestBase:: |
protected | property | Do not forward any global state from the parent process to the processes that run the actual tests. | |
KernelTestBase:: |
protected | property | The app root. | |
KernelTestBase:: |
protected | property | Kernel tests are run in separate processes because they allow autoloading of code from extensions. Running the test in a separate process isolates this behavior from other tests. Subclasses should not override this property. | |
KernelTestBase:: |
protected | property | ||
KernelTestBase:: |
protected | property | Set to TRUE to strict check all configuration saved. | 6 |
KernelTestBase:: |
protected | property | The virtual filesystem root directory. | |
KernelTestBase:: |
protected | function | 1 | |
KernelTestBase:: |
protected | function | Bootstraps a basic test environment. | |
KernelTestBase:: |
private | function | Bootstraps a kernel for a test. | |
KernelTestBase:: |
protected | function | Configuration accessor for tests. Returns non-overridden configuration. | |
KernelTestBase:: |
protected | function | Disables modules for this test. | |
KernelTestBase:: |
protected | function | Enables modules for this test. | |
KernelTestBase:: |
protected | function | Gets the config schema exclusions for this test. | |
KernelTestBase:: |
protected | function | Returns the Database connection info to be used for this test. | 1 |
KernelTestBase:: |
public | function | ||
KernelTestBase:: |
private | function | Returns Extension objects for $modules to enable. | |
KernelTestBase:: |
private static | function | Returns the modules to enable for this test. | |
KernelTestBase:: |
protected | function | Initializes the FileCache component. | |
KernelTestBase:: |
protected | function | Installs default configuration for a given list of modules. | |
KernelTestBase:: |
protected | function | Installs the storage schema for a specific entity type. | |
KernelTestBase:: |
protected | function | Installs database tables from a module schema definition. | |
KernelTestBase:: |
protected | function | Returns whether the current test method is running in a separate process. | |
KernelTestBase:: |
protected | function | ||
KernelTestBase:: |
public | function |
Registers test-specific services. Overrides ServiceProviderInterface:: |
26 |
KernelTestBase:: |
protected | function | Renders a render array. | 1 |
KernelTestBase:: |
protected | function | Sets the install profile and rebuilds the container to update it. | |
KernelTestBase:: |
protected | function | Sets an in-memory Settings variable. | |
KernelTestBase:: |
public static | function | 1 | |
KernelTestBase:: |
protected | function | Sets up the filesystem, so things like the file directory. | 2 |
KernelTestBase:: |
protected | function | Stops test execution. | |
KernelTestBase:: |
protected | function | 6 | |
KernelTestBase:: |
public | function | @after | |
KernelTestBase:: |
protected | function | Dumps the current state of the virtual filesystem to STDOUT. | |
KernelTestBase:: |
public | function | BC: Automatically resolve former KernelTestBase class properties. | |
KernelTestBase:: |
public | function | Prevents serializing any properties. | |
PhpunitCompatibilityTrait:: |
public | function | Returns a mock object for the specified class using the available method. | |
PhpunitCompatibilityTrait:: |
public | function | Compatibility layer for PHPUnit 6 to support PHPUnit 4 code. | |
RandomGeneratorTrait:: |
protected | property | The random generator. | |
RandomGeneratorTrait:: |
protected | function | Gets the random generator for the utility methods. | |
RandomGeneratorTrait:: |
protected | function | Generates a unique random string containing letters and numbers. | 1 |
RandomGeneratorTrait:: |
public | function | Generates a random PHP object. | |
RandomGeneratorTrait:: |
public | function | Generates a pseudo-random string of ASCII characters of codes 32 to 126. | |
RandomGeneratorTrait:: |
public | function | Callback for random string validation. | |
StorageCopyTrait:: |
protected static | function | Copy the configuration from one storage to another and remove stale items. | |
TestRequirementsTrait:: |
private | function | Checks missing module requirements. | |
TestRequirementsTrait:: |
protected | function | Check module requirements for the Drupal use case. | 1 |
TestRequirementsTrait:: |
protected static | function | Returns the Drupal root directory. | |
ViewResultAssertionTrait:: |
protected | function | Verifies that a result set returned by a View matches expected values. | |
ViewResultAssertionTrait:: |
protected | function | Performs View result assertions. | |
ViewResultAssertionTrait:: |
protected | function | Verifies that a result set returned by a View differs from certain values. | |
ViewsKernelTestBase:: |
protected | function | Returns a very simple test dataset. | 8 |
ViewsKernelTestBase:: |
protected | function | Executes a view with debugging. | |
ViewsKernelTestBase:: |
protected | function | Orders a nested array containing a result set based on a given column. | |
ViewsKernelTestBase:: |
protected | function | Returns the schema definition. | 6 |
ViewsKernelTestBase:: |
protected | function | Sets up the configuration and schema of views and views_test_data modules. | 7 |
ViewsKernelTestBase:: |
protected | function | Returns the views data definition. | 22 |