X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=web%2Fmodules%2Fcontrib%2Fentity_browser%2Fsrc%2FTests%2FFormElementTest.php;fp=web%2Fmodules%2Fcontrib%2Fentity_browser%2Fsrc%2FTests%2FFormElementTest.php;h=0a4ac415bd75e4a0858a95d77a5a26d7b3d0846f;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/modules/contrib/entity_browser/src/Tests/FormElementTest.php b/web/modules/contrib/entity_browser/src/Tests/FormElementTest.php new file mode 100644 index 000000000..0a4ac415b --- /dev/null +++ b/web/modules/contrib/entity_browser/src/Tests/FormElementTest.php @@ -0,0 +1,74 @@ +container + ->get('entity_type.manager') + ->getStorage('node_type') + ->create([ + 'type' => 'page', + 'name' => 'page', + ])->save(); + + $this->nodes[] = $this->drupalCreateNode(); + $this->nodes[] = $this->drupalCreateNode(); + } + + /** + * Tests the Entity browser form element. + */ + public function testFormElement() { + $this->drupalGet('/test-element'); + $this->assertLink('Select entities', 0, 'Trigger link found.'); + $this->assertFieldByXPath("//input[@type='hidden' and @id='edit-fancy-entity-browser-target']", '', "Entity browser's hidden element found."); + + $edit = [ + 'fancy_entity_browser[entity_ids]' => $this->nodes[0]->getEntityTypeId() . ':' . $this->nodes[0]->id() . ' ' . $this->nodes[1]->getEntityTypeId() . ':' . $this->nodes[1]->id(), + ]; + $this->drupalPostForm(NULL, $edit, 'Submit'); + $expected = 'Selected entities: ' . $this->nodes[0]->label() . ', ' . $this->nodes[1]->label(); + $this->assertText($expected, 'Selected entities detected.'); + + $default_entity = $this->nodes[0]->getEntityTypeId() . ':' . $this->nodes[0]->id(); + $this->drupalGet('/test-element', ['query' => ['default_entity' => $default_entity, 'selection_mode' => EntityBrowserElement::SELECTION_MODE_EDIT]]); + $this->assertLink('Select entities', 0, 'Trigger link found.'); + $this->assertFieldByXPath("//input[@type='hidden' and @id='edit-fancy-entity-browser-target']", $default_entity, "Entity browser's hidden element found."); + + $edit = [ + 'fancy_entity_browser[entity_ids]' => $this->nodes[1]->getEntityTypeId() . ':' . $this->nodes[1]->id() . ' ' . $this->nodes[0]->getEntityTypeId() . ':' . $this->nodes[0]->id(), + ]; + $this->drupalPostForm(NULL, $edit, 'Submit'); + $expected = 'Selected entities: ' . $this->nodes[1]->label() . ', ' . $this->nodes[0]->label(); + $this->assertText($expected, 'Selected entities detected.'); + } + +}