diff --git a/core/modules/views/src/Plugin/views/query/Sql.php b/core/modules/views/src/Plugin/views/query/Sql.php index 94ec74338cad28499294b2d8afa597cd1423fb3d..9b4554db8a1a51d962a7e04d2957ea068880911a 100644 --- a/core/modules/views/src/Plugin/views/query/Sql.php +++ b/core/modules/views/src/Plugin/views/query/Sql.php @@ -1788,7 +1788,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1798,7 +1797,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodDistinct', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1808,7 +1806,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1818,7 +1815,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1828,7 +1824,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1838,7 +1833,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], @@ -1848,7 +1842,6 @@ public function getAggregationInfo() { 'method' => 'aggregationMethodSimple', 'handler' => [ 'argument' => 'groupby_numeric', - 'field' => 'numeric', 'filter' => 'groupby_numeric', 'sort' => 'groupby_numeric', ], diff --git a/core/modules/views_ui/tests/src/Functional/FieldUITest.php b/core/modules/views_ui/tests/src/Functional/FieldUITest.php index cd8a199d18af67446be4af1a75723654a7b43873..2789dfe1556c6be6b3e6a952fa9f3af52a616f55 100644 --- a/core/modules/views_ui/tests/src/Functional/FieldUITest.php +++ b/core/modules/views_ui/tests/src/Functional/FieldUITest.php @@ -25,7 +25,17 @@ class FieldUITest extends UITestBase { * * @var array */ - public static $testViews = ['test_view']; + public static $testViews = [ + 'test_view', + 'test_aggregate_count', + ]; + + /** + * {@inheritdoc} + */ + protected static $modules = [ + 'entity_test', + ]; /** * Tests the UI of field handlers. @@ -104,4 +114,23 @@ public function testFieldLabel(): void { $this->assertEquals('', $view->field['title']->options['label'], 'The field label for normal styles are empty.'); } + /** + * Tests the UI of field aggregation settings. + */ + public function testFieldAggregationSettings(): void { + $edit_handler_url = 'admin/structure/views/nojs/handler-group/test_aggregate_count/default/field/id'; + $this->drupalGet($edit_handler_url); + $this->submitForm(['options[group_type]' => 'count'], 'Apply'); + $this->assertSession() + ->pageTextNotContains('The website encountered an unexpected error. Try again later.'); + $this->drupalGet($edit_handler_url); + $dropdown = $this->getSession()->getPage()->find('named', ['select', 'options[group_column]']); + // Ensure the dropdown for group column exists. + $this->assertNotNull($dropdown, 'The dropdown for options[group_column] does not exist.'); + $this->submitForm(['options[group_type]' => 'count'], 'Apply'); + // Ensure that there is no error after submitting the form. + $this->assertSession() + ->pageTextNotContains('The website encountered an unexpected error. Try again later.'); + } + }