Issue #2865992 by tar_inet, Lendude, mpdonadio, Wim Leers: Convert Datetime module Views tests to Kerneltest
parent
78adae8bf6
commit
61c3d57c38
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
namespace Drupal\datetime\Tests\Views;
|
||||
|
||||
@trigger_error('\Drupal\datetime\Tests\Views\DateTimeHandlerTestBase is deprecated in Drupal 8.4.0 and will be removed before Drupal 9.0.0. Instead, use \Drupal\Tests\BrowserTestBase', E_USER_DEPRECATED);
|
||||
|
||||
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItem;
|
||||
use Drupal\field\Entity\FieldConfig;
|
||||
use Drupal\node\Entity\NodeType;
|
||||
|
|
@ -11,6 +13,9 @@ use Drupal\field\Entity\FieldStorageConfig;
|
|||
|
||||
/**
|
||||
* Base class for testing datetime handlers.
|
||||
*
|
||||
* @deprecated in Drupal 8.4.0 and will be removed before Drupal 9.0.0.
|
||||
* Use \Drupal\Tests\BrowserTestBase.
|
||||
*/
|
||||
abstract class DateTimeHandlerTestBase extends HandlerTestBase {
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\datetime\Tests\Views;
|
||||
namespace Drupal\Tests\datetime\Kernel\Views;
|
||||
|
||||
use Drupal\node\Entity\Node;
|
||||
use Drupal\views\Views;
|
||||
|
||||
/**
|
||||
|
|
@ -19,8 +20,8 @@ class ArgumentDateTimeTest extends DateTimeHandlerTestBase {
|
|||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
protected function setUp($import_test_views = TRUE) {
|
||||
parent::setUp($import_test_views);
|
||||
|
||||
// Add some basic test nodes.
|
||||
$dates = [
|
||||
|
|
@ -29,11 +30,15 @@ class ArgumentDateTimeTest extends DateTimeHandlerTestBase {
|
|||
'2002-01-01',
|
||||
];
|
||||
foreach ($dates as $date) {
|
||||
$this->nodes[] = $this->drupalCreateNode([
|
||||
$node = Node::create([
|
||||
'title' => $this->randomMachineName(8),
|
||||
'type' => 'page',
|
||||
'field_date' => [
|
||||
'value' => $date,
|
||||
]
|
||||
]);
|
||||
$node->save();
|
||||
$this->nodes[] = $node;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\Tests\datetime\Kernel\Views;
|
||||
|
||||
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItem;
|
||||
use Drupal\field\Entity\FieldConfig;
|
||||
use Drupal\node\Entity\NodeType;
|
||||
use Drupal\Tests\views\Kernel\ViewsKernelTestBase;
|
||||
use Drupal\views\Tests\ViewTestData;
|
||||
use Drupal\field\Entity\FieldStorageConfig;
|
||||
|
||||
/**
|
||||
* Base class for testing datetime handlers.
|
||||
*/
|
||||
abstract class DateTimeHandlerTestBase extends ViewsKernelTestBase {
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static $modules = ['datetime_test', 'node', 'datetime', 'field'];
|
||||
|
||||
/**
|
||||
* Name of the field.
|
||||
*
|
||||
* Note, this is used in the default test view.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected static $field_name = 'field_date';
|
||||
|
||||
/**
|
||||
* Nodes to test.
|
||||
*
|
||||
* @var \Drupal\node\NodeInterface[]
|
||||
*/
|
||||
protected $nodes = [];
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp($import_test_views = TRUE) {
|
||||
parent::setUp($import_test_views);
|
||||
|
||||
$this->installEntitySchema('node');
|
||||
$this->installEntitySchema('user');
|
||||
|
||||
// Add a date field to page nodes.
|
||||
$node_type = NodeType::create([
|
||||
'type' => 'page',
|
||||
'name' => 'page'
|
||||
]);
|
||||
$node_type->save();
|
||||
$fieldStorage = FieldStorageConfig::create([
|
||||
'field_name' => static::$field_name,
|
||||
'entity_type' => 'node',
|
||||
'type' => 'datetime',
|
||||
'settings' => ['datetime_type' => DateTimeItem::DATETIME_TYPE_DATETIME],
|
||||
]);
|
||||
$fieldStorage->save();
|
||||
$field = FieldConfig::create([
|
||||
'field_storage' => $fieldStorage,
|
||||
'bundle' => 'page',
|
||||
'required' => TRUE,
|
||||
]);
|
||||
$field->save();
|
||||
|
||||
// Views needs to be aware of the new field.
|
||||
$this->container->get('views.views_data')->clear();
|
||||
|
||||
// Set column map.
|
||||
$this->map = [
|
||||
'nid' => 'nid',
|
||||
];
|
||||
|
||||
// Load test views.
|
||||
ViewTestData::createTestViews(get_class($this), ['datetime_test']);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,8 +1,10 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\datetime\Tests\Views;
|
||||
namespace Drupal\Tests\datetime\Kernel\Views;
|
||||
|
||||
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItem;
|
||||
use Drupal\field\Entity\FieldStorageConfig;
|
||||
use Drupal\node\Entity\Node;
|
||||
use Drupal\views\Views;
|
||||
|
||||
/**
|
||||
|
|
@ -27,8 +29,8 @@ class FilterDateTest extends DateTimeHandlerTestBase {
|
|||
*
|
||||
* Create nodes with relative dates of yesterday, today, and tomorrow.
|
||||
*/
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
protected function setUp($import_test_views = TRUE) {
|
||||
parent::setUp($import_test_views);
|
||||
|
||||
// Set to 'today'.
|
||||
static::$date = REQUEST_TIME;
|
||||
|
|
@ -48,11 +50,15 @@ class FilterDateTest extends DateTimeHandlerTestBase {
|
|||
];
|
||||
|
||||
foreach ($dates as $date) {
|
||||
$this->nodes[] = $this->drupalCreateNode([
|
||||
$node = Node::create([
|
||||
'title' => $this->randomMachineName(8),
|
||||
'type' => 'page',
|
||||
'field_date' => [
|
||||
'value' => $date,
|
||||
]
|
||||
]);
|
||||
$node->save();
|
||||
$this->nodes[] = $node;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\datetime\Tests\Views;
|
||||
namespace Drupal\Tests\datetime\Kernel\Views;
|
||||
|
||||
use Drupal\node\Entity\Node;
|
||||
use Drupal\views\Views;
|
||||
|
||||
/**
|
||||
|
|
@ -29,8 +30,8 @@ class FilterDateTimeTest extends DateTimeHandlerTestBase {
|
|||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
protected function setUp($import_test_views = TRUE) {
|
||||
parent::setUp($import_test_views);
|
||||
|
||||
static::$date = REQUEST_TIME + 86400;
|
||||
|
||||
|
|
@ -47,11 +48,15 @@ class FilterDateTimeTest extends DateTimeHandlerTestBase {
|
|||
\Drupal::service('date.formatter')->format(static::$date, 'custom', DATETIME_DATETIME_STORAGE_FORMAT, DATETIME_STORAGE_TIMEZONE),
|
||||
];
|
||||
foreach ($dates as $date) {
|
||||
$this->nodes[] = $this->drupalCreateNode([
|
||||
$node = Node::create([
|
||||
'title' => $this->randomMachineName(8),
|
||||
'type' => 'page',
|
||||
'field_date' => [
|
||||
'value' => $date,
|
||||
]
|
||||
]);
|
||||
$node->save();
|
||||
$this->nodes[] = $node;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\datetime\Tests\Views;
|
||||
namespace Drupal\Tests\datetime\Kernel\Views;
|
||||
|
||||
use Drupal\node\Entity\Node;
|
||||
use Drupal\views\Views;
|
||||
|
||||
/**
|
||||
|
|
@ -19,8 +20,8 @@ class SortDateTimeTest extends DateTimeHandlerTestBase {
|
|||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
protected function setUp($import_test_views = TRUE) {
|
||||
parent::setUp($import_test_views);
|
||||
|
||||
// Add some basic test nodes.
|
||||
$dates = [
|
||||
|
|
@ -33,11 +34,15 @@ class SortDateTimeTest extends DateTimeHandlerTestBase {
|
|||
'2000-10-10T00:03:03',
|
||||
];
|
||||
foreach ($dates as $date) {
|
||||
$this->nodes[] = $this->drupalCreateNode([
|
||||
$node = Node::create([
|
||||
'title' => $this->randomMachineName(8),
|
||||
'type' => 'page',
|
||||
'field_date' => [
|
||||
'value' => $date,
|
||||
]
|
||||
]);
|
||||
$node->save();
|
||||
$this->nodes[] = $node;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue