Skip to content
Snippets Groups Projects
Commit 6e491f65 authored by spokje's avatar spokje Committed by Merlin Axel Rutz
Browse files

Issue #3208826 by Spokje: Code cleanup

parent 057a7612
Branches
Tags
2 merge requests!113Draft: Automated Project Update Bot fixes,!22Issue #3208826: Code cleanup
......@@ -79,8 +79,8 @@ class ComplexSimpleWidgetTest extends InlineEntityFormTestBase {
->press();
$this->assertNotEmpty($assert_session->waitForElement('xpath', $outer_title_field_xpath));
}
$outer_title = $this->randomMachineName(8);
$inner_title = $this->randomMachineName(8);
$outer_title = $this->randomMachineName();
$inner_title = $this->randomMachineName();
$assert_session->elementExists('xpath', $outer_title_field_xpath)->setValue($outer_title);
// Simple widget is required so should always show up. No need for
// add submit.
......@@ -97,7 +97,7 @@ class ComplexSimpleWidgetTest extends InlineEntityFormTestBase {
$this->assertNoNodeByTitle($outer_title, 'Outer node was not created when widget submitted.');
$this->assertNoNodeByTitle($inner_title, 'Inner node was not created when widget submitted.');
$host_title = $this->randomMachineName(8);
$host_title = $this->randomMachineName();
$assert_session->elementExists('xpath', $first_title_field_xpath)->setValue($host_title);
$page->pressButton('Save');
$assert_session->pageTextContains("$host_title has been created.");
......
......@@ -2,8 +2,6 @@
namespace Drupal\Tests\inline_entity_form\FunctionalJavascript;
use Drupal\Core\Entity\Display\EntityDisplayInterface;
/**
* IEF complex entity reference revisions tests.
*
......
......@@ -330,13 +330,13 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
$this->updateSetting('allow_existing', TRUE);
// Create three ief_reference_type entities.
$referenceNodes = $this->createReferenceContent(3);
$referenceNodes = $this->createReferenceContent();
$this->drupalCreateNode([
'type' => 'ief_test_complex',
'title' => 'Some title',
'multi' => array_values($referenceNodes),
]);
/** @var \Drupal\node\NodeInterface $parent_node */
$parent_node = $this->drupalGetNodeByTitle('Some title');
// Edit the second entity.
......@@ -391,7 +391,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
$this->drupalGet('node/' . $parent_node->id() . '/edit');
$assert_session->elementsCount('css', 'tr.ief-row-entity', 2);
$assert_session->elementExists('xpath', '(//input[@value="Remove"])[2]')->press();
$this->assertNotEmpty($confirm_checkbox = $assert_session->waitForElement('xpath', $first_delete_checkbox_xpath));
$this->assertNotEmpty($assert_session->waitForElement('xpath', $first_delete_checkbox_xpath));
$assert_session->pageTextContains('Are you sure you want to remove Some reference 3?');
$assert_session->elementExists('xpath', '(//input[@value="Remove"])[2]')->press();
$this->waitForRowRemovedByTitle('Some reference 3');
......@@ -423,7 +423,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
$this->updateSetting('allow_existing', TRUE);
// Create three ief_reference_type entities.
$referenceNodes = $this->createReferenceContent(3);
$referenceNodes = $this->createReferenceContent();
// Create a node for every bundle available.
$bundle_nodes = $this->createNodeForEveryBundle();
......@@ -474,7 +474,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
// Check if all remaining nodes from all bundles are referenced.
$assert_session->elementsCount('css', 'fieldset[data-drupal-selector="edit-all-bundles"] tr.ief-row-entity', 12);
foreach ($bundle_nodes as $id => $title) {
foreach ($bundle_nodes as $title) {
$this->assertRowByTitle($title);
}
}
......@@ -569,7 +569,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
'title' => 'Some title',
'multi' => array_values($referenceNodes),
]);
/** @var \Drupal\node\NodeInterface $parent_node */
$parent_node = $this->drupalGetNodeByTitle('Some title');
$this->drupalGet('node/' . $parent_node->id() . '/edit');
......@@ -739,7 +739,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
* @param mixed $value
* The value to set.
*/
protected function updateSetting($name, $value) {
protected function updateSetting(string $name, $value) {
/** @var \Drupal\Core\Entity\Display\EntityFormDisplayInterface $display */
$display = $this->entityFormDisplayStorage->load('node.ief_test_complex.default');
$component = $display->getComponent('multi');
......@@ -775,7 +775,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
* @param bool $required
* Whether the fields are required.
*/
protected function setupNestedComplexForm($required) {
protected function setupNestedComplexForm(bool $required) {
$assert_session = $this->assertSession();
$page = $this->getSession()->getPage();
/** @var \Drupal\Core\Field\FieldConfigInterface $ief_test_nested1 */
......@@ -821,7 +821,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
* @param string $expected_error
* The error message that is expected to be shown.
*/
protected function checkExistingValidationExpectation($existing_node_text, $expected_error) {
protected function checkExistingValidationExpectation(string $existing_node_text, string $expected_error) {
$page = $this->getSession()->getPage();
$assert_session = $this->assertSession();
$this->openMultiExistingForm();
......@@ -945,10 +945,8 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
$top_title_field_xpath = $this->getXpathForNthInputByLabelText('Title', 1);
$nested_title_field_xpath = $this->getXpathForNthInputByLabelText('Title', 2);
$double_nested_title_field_xpath = $this->getXpathForNthInputByLabelText('Title', 3);
$second_edit_button_xpath = $this->getXpathForButtonWithValue('Edit', 2);
$page = $this->getSession()->getPage();
$assert_session = $this->assertSession();
$this->setupNestedComplexForm($required);
......@@ -986,7 +984,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
$this->elementWithXpath($this->buttonXpath('Update node 2'))->press();
$this->waitForXpathRemoved($this->buttonXpath('Update node 2'));
// Repeat. Add node 2a and 2a_3
// Repeat. Add node 2a and 2a_3.
$this->elementWithXpath($this->buttonXpath('Add new node 2'))->press();
$this->waitForXpath($this->buttonXpath('Create node 2'));
if (!$required) {
......@@ -1036,6 +1034,7 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
*
* @param string $xpath
* The XPath.
*
* @return \Behat\Mink\Element\NodeElement
* The element.
*/
......@@ -1044,12 +1043,15 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
}
/**
* Wait, assert, and return an element via XPath. On fail, save output and throw.
* Wait, assert, and return an element via XPath.
*
* On fail, save output and throw.
*
* @param string $xpath
* The XPath.
* @param int $timeout
* The timeout in milliseconds.
*
* @return \Behat\Mink\Element\NodeElement
* The element.
*/
......@@ -1063,20 +1065,23 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
}
/**
* Wait and assert removal of an element via XPath. On fail, save output and throw.
* Wait and assert removal of an element via XPath.
*
* On fail, save output and throw.
*
* @param string $xpath
* The XPath.
* @param int $timeout
* The timeout in milliseconds.
*
* @return bool
* Returna always true (else throws).
* Returns always true (else throws).
*/
public function waitForXpathRemoved(string $xpath, int $timeout = 10000): bool {
$removed = $this->assertSession()->waitForElementRemoved('xpath', $xpath, $timeout);
if (!$removed) {
$this->htmlOutput();
$this->assert($removed);
$this->assertTrue($removed);
}
return $removed;
}
......@@ -1085,9 +1090,10 @@ class ComplexWidgetTest extends InlineEntityFormTestBase {
* Get xpath for a button.
*
* @param string $label
* The button's label.
* The button's label.
* @param int $index
* The button's index, defaults to 1.
*
* @return string
* The XPath.
*/
......
......@@ -65,7 +65,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @return string
* The name of the button.
*/
protected function getButtonName($xpath) {
protected function getButtonName(string $xpath) {
$retval = '';
/** @var \SimpleXMLElement[] $elements */
if ($elements = $this->xpath($xpath)) {
......@@ -87,7 +87,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $message
* Message to display.
*/
protected function assertNoNodeByTitle($title, $message = '') {
protected function assertNoNodeByTitle(string $title, $message = '') {
if (!$message) {
$message = "No node with title: $title";
}
......@@ -106,7 +106,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $message
* Message to display.
*/
protected function assertNodeByTitle($title, $content_type = NULL, $message = '') {
protected function assertNodeByTitle(string $title, $content_type = NULL, $message = '') {
if (!$message) {
$message = "Node with title found: $title";
}
......@@ -127,7 +127,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $bundle
* (optional) The bundle this entity should have.
*/
protected function assertEntityByLabel($label, $entity_type_id = 'node', $bundle = NULL) {
protected function assertEntityByLabel(string $label, $entity_type_id = 'node', $bundle = NULL) {
$entity_type_manager = \Drupal::entityTypeManager();
$entity_type = $entity_type_manager->getDefinition($entity_type_id);
$label_key = $entity_type->getKey('label');
......@@ -155,7 +155,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $prefix
* The config prefix.
*/
protected function checkFormDisplayFields($form_display, $prefix) {
protected function checkFormDisplayFields(string $form_display, string $prefix) {
$assert_session = $this->assertSession();
$form_display_fields = [
'node.ief_test_custom.default' => [
......@@ -194,7 +194,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
$assert_session->fieldExists($prefix . $expected_field);
}
foreach ($fields['unexpected'] as $unexpected_field) {
$assert_session->fieldNotExists($prefix . $unexpected_field, NULL);
$assert_session->fieldNotExists($prefix . $unexpected_field);
}
}
......@@ -204,7 +204,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $title
* The title of the row for which to wait.
*/
protected function waitForRowByTitle($title) {
protected function waitForRowByTitle(string $title) {
$this->assertNotEmpty($this->assertSession()->waitForElement('xpath', '//td[@class="inline-entity-form-node-label" and text()="' . $title . '"]'));
}
......@@ -214,7 +214,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $title
* The title of the row for which to wait.
*/
protected function waitForRowRemovedByTitle($title) {
protected function waitForRowRemovedByTitle(string $title) {
$this->assertNotEmpty($this->assertSession()->waitForElementRemoved('xpath', '//td[@class="inline-entity-form-node-label" and text()="' . $title . '"]'));
}
......@@ -227,7 +227,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @return \Behat\Mink\Element\NodeElement
* The <td> element containing the label for the IEF row.
*/
protected function assertRowByTitle($title) {
protected function assertRowByTitle(string $title) {
$this->assertNotEmpty($element = $this->assertSession()->elementExists('xpath', '//td[@class="inline-entity-form-node-label" and text()="' . $title . '"]'));
return $element;
}
......@@ -238,7 +238,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @param string $title
* The title of the row to check.
*/
protected function assertNoRowByTitle($title) {
protected function assertNoRowByTitle(string $title) {
$this->assertSession()->elementNotExists('xpath', '//td[@class="inline-entity-form-node-label" and text()="' . $title . '"]');
}
......@@ -255,8 +255,8 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @return string
* The xpath selector for the input to select.
*/
protected function getXpathForNthInputByLabelText($label, $index) {
return "(//*[@id=string((//label[.='{$label}']/@for)[{$index}])])";
protected function getXpathForNthInputByLabelText(string $label, int $index) {
return "(//*[@id=string((//label[.='$label']/@for)[$index])])";
}
/**
......@@ -274,7 +274,7 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
*
* Note: index starts at 1.
*
* @param string @value
* @param string $value
* The text on the button to select.
* @param int $index
* The index of the button to select.
......@@ -282,8 +282,8 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @return string
* The xpath selector for the button to select.
*/
protected function getXpathForButtonWithValue($value, $index) {
return "(//input[@type='submit' and @value='{$value}'])[{$index}]";
protected function getXpathForButtonWithValue(string $value, int $index) {
return "(//input[@type='submit' and @value='$value'])[$index]";
}
/**
......@@ -297,8 +297,8 @@ abstract class InlineEntityFormTestBase extends WebDriverTestBase {
* @return string
* The xpath selector for the fieldset label to select.
*/
protected function getXpathForFieldsetLabel($label, $index) {
return "(//fieldset/legend/span[.='{$label}'])[{$index}]";
protected function getXpathForFieldsetLabel(string $label, int $index) {
return "(//fieldset/legend/span[.='{$label}'])[$index]";
}
}
......@@ -239,7 +239,7 @@ class SimpleWidgetTest extends InlineEntityFormTestBase {
* @param int $cardinality
* The field cardinality with which to check.
*/
protected function checkEditAccess(NodeInterface $host_node, $number_of_items, $cardinality) {
protected function checkEditAccess(NodeInterface $host_node, int $number_of_items, int $cardinality) {
$assert_session = $this->assertSession();
$page = $this->getSession()->getPage();
$other_user = $this->createUser([
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment