Issue #2895544 by Ginovski, Lendude, mpdonadio, jhedstrom, Berdir, dawehner: Datetime module missing view plugin config schema

8.5.x
Lee Rowlands 2017-10-30 08:52:43 +10:00
parent fdce9b702e
commit 93045afbe4
No known key found for this signature in database
GPG Key ID: 2B829A3DF9204DC4
4 changed files with 87 additions and 2 deletions

View File

@ -0,0 +1,32 @@
views.argument.datetime:
type: views.argument.date
views.argument.datetime_day:
type: views.argument.datetime
views.argument.datetime_full_date:
type: views.argument.datetime
views.argument.datetime_month:
type: views.argument.datetime
views.argument.datetime_week:
type: views.argument.datetime
views.argument.datetime_year:
type: views.argument.datetime
views.argument.datetime_year_month:
type: views.argument.datetime
views.filter.datetime:
type: views.filter.date
views.filter_value.datetime:
type: views.filter_value.date
views.sort.datetime:
type: views.sort.date
views.sort_expose.datetime:
type: views.sort_expose.date

View File

@ -33,6 +33,7 @@ display:
relationship: none
table: node__field_date
order: DESC
granularity: second
plugin_id: datetime
id:
field: nid

View File

@ -0,0 +1,52 @@
<?php
namespace Drupal\Tests\datetime\Kernel\Views;
use Drupal\Tests\SchemaCheckTestTrait;
use Drupal\views\Views;
/**
* Tests the Drupal\datetime\Plugin\views schemas.
*
* @group datetime
*/
class DateTimeSchemaTest extends DateTimeHandlerTestBase {
use SchemaCheckTestTrait;
/**
* {@inheritdoc}
*/
public static $testViews = ['test_argument_datetime', 'test_filter_datetime', 'test_sort_datetime'];
/**
* Test argument plugin schema.
*/
public function testDateTimeSchema() {
// Test argument schema.
$view = Views::getView('test_argument_datetime');
$view->initHandlers();
$view->setDisplay('default');
$arguments = $view->displayHandlers->get('default')->getOption('arguments');
$arguments['field_date_value_year']['date'] = 'Date';
$view->displayHandlers->get('default')->overrideOption('arguments', $arguments);
$view->save();
$this->assertConfigSchemaByName('views.view.test_argument_datetime');
// Test filter schema.
$view = Views::getView('test_filter_datetime');
$view->initHandlers();
$filters = $view->displayHandlers->get('default')->getOption('filters');
$filters['field_date_value']['type'] = 'Date';
$view->save();
$this->assertConfigSchemaByName('views.view.test_filter_datetime');
// Test sort schema.
$view = Views::getView('test_sort_datetime');
$view->initHandlers();
$sorts = $view->displayHandlers->get('default')->getOption('sorts');
$this->assertNotEmpty($sorts['field_date_value']['granularity']);
$this->assertConfigSchemaByName('views.view.test_sort_datetime');
}
}

View File

@ -154,8 +154,8 @@ views.filter_value.date:
type: string
label: 'Type'
views.filter_value.datetime:
type: views.filter_value.numeric
views.filter.date:
type: views.filter.numeric
label: 'Date'
mapping:
type: