diff --git a/entity_browser.libraries.yml b/entity_browser.libraries.yml index d267052..29772da 100644 --- a/entity_browser.libraries.yml +++ b/entity_browser.libraries.yml @@ -27,6 +27,7 @@ iframe_selection: js/entity_browser.iframe_selection.js: {} dependencies: - core/drupalSettings + - core/jquery entity_reference: version: VERSION diff --git a/tests/modules/entity_browser_test/config/install/views.view.files_entity_browser.yml b/tests/modules/entity_browser_test/config/install/views.view.files_entity_browser.yml index bf51ac3..9351d53 100644 --- a/tests/modules/entity_browser_test/config/install/views.view.files_entity_browser.yml +++ b/tests/modules/entity_browser_test/config/install/views.view.files_entity_browser.yml @@ -196,7 +196,46 @@ display: multi_type: separator separator: ', ' field_api_classes: false - filters: { } + filters: + filename: + id: filename + table: file_managed + field: filename + relationship: none + group_type: group + admin_label: '' + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: filename_op + label: Filename + description: '' + use_operator: false + operator: filename_op + identifier: filename + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + entity_type: file + plugin_id: string sorts: created: id: created @@ -222,8 +261,8 @@ display: cache_metadata: max-age: 0 contexts: - - 'languages:language_content' - 'languages:language_interface' + - url - url.query_args - user.permissions tags: { } @@ -237,8 +276,8 @@ display: cache_metadata: max-age: 0 contexts: - - 'languages:language_content' - 'languages:language_interface' + - url - url.query_args - user.permissions tags: { } diff --git a/tests/src/FunctionalJavascript/EntityBrowserJavascriptTestBase.php b/tests/src/FunctionalJavascript/EntityBrowserJavascriptTestBase.php index c9ab59c..47357a4 100644 --- a/tests/src/FunctionalJavascript/EntityBrowserJavascriptTestBase.php +++ b/tests/src/FunctionalJavascript/EntityBrowserJavascriptTestBase.php @@ -36,7 +36,7 @@ abstract class EntityBrowserJavascriptTestBase extends JavascriptTestBase { /** * {@inheritdoc} */ - public function setUp() { + protected function setUp() { parent::setUp(); $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']); diff --git a/tests/src/Functional/EntityBrowserViewsWidgetTest.php b/tests/src/FunctionalJavascript/EntityBrowserViewsWidgetTest.php similarity index 60% rename from tests/src/Functional/EntityBrowserViewsWidgetTest.php rename to tests/src/FunctionalJavascript/EntityBrowserViewsWidgetTest.php index c7c9046..9d23971 100644 --- a/tests/src/Functional/EntityBrowserViewsWidgetTest.php +++ b/tests/src/FunctionalJavascript/EntityBrowserViewsWidgetTest.php @@ -1,9 +1,8 @@ 'public://example.jpg', ]); @@ -50,7 +50,22 @@ class EntityBrowserViewsWidgetTest extends BrowserTestBase { // Visit a test entity browser page that defaults to using a View widget. $this->drupalGet('/entity-browser/iframe/test_entity_browser_file'); $field = 'entity_browser_select[file:' . $file->id() . ']'; + + // Test exposed filters. + $this->assertSession()->pageTextContains('example.jpg'); + $this->assertSession()->fieldExists($field); + $this->getSession()->getPage()->fillField('filename', 'llama'); + $this->getSession()->getPage()->pressButton('Apply'); + $this->waitForAjaxToFinish(); + $this->assertSession()->fieldNotExists($field); + $this->assertSession()->pageTextNotContains('example.jpg'); + $this->getSession()->getPage()->fillField('filename', 'example'); + $this->getSession()->getPage()->pressButton('Apply'); + $this->waitForAjaxToFinish(); + $this->assertSession()->pageTextContains('example.jpg'); $this->assertSession()->fieldExists($field); + + // Test selection. $this->submitForm([ $field => 1, ], t('Select entities'));