3 namespace Drupal\Tests\views_ui\Functional;
5 use Drupal\views\Views;
6 use Drupal\views\Entity\View;
13 class QueryTest extends UITestBase {
16 * Views used by this test.
20 public static $testViews = ['test_view'];
25 protected function viewsData() {
26 $data = parent::viewsData();
27 $data['views_test_data']['table']['base']['query_id'] = 'query_test';
33 * Tests query plugins settings.
35 public function testQueryUI() {
36 $view = View::load('test_view');
37 $display = &$view->getDisplay('default');
38 $display['display_options']['query'] = ['type' => 'query_test'];
41 // Save some query settings.
42 $query_settings_path = "admin/structure/views/nojs/display/test_view/default/query";
43 $random_value = $this->randomMachineName();
44 $this->drupalPostForm($query_settings_path, ['query[options][test_setting]' => $random_value], t('Apply'));
45 $this->drupalPostForm(NULL, [], t('Save'));
47 // Check that the settings are saved into the view itself.
48 $view = Views::getView('test_view');
51 $this->assertEqual($random_value, $view->query->options['test_setting'], 'Query settings got saved');