diff --git a/core/modules/user/tests/src/FunctionalJavascript/RegistrationWithUserFieldsTest.php b/core/modules/user/tests/src/FunctionalJavascript/RegistrationWithUserFieldsTest.php index 8a75202b9b..583d94f0f3 100644 --- a/core/modules/user/tests/src/FunctionalJavascript/RegistrationWithUserFieldsTest.php +++ b/core/modules/user/tests/src/FunctionalJavascript/RegistrationWithUserFieldsTest.php @@ -6,7 +6,6 @@ use Drupal\Core\Field\FieldStorageDefinitionInterface; use Drupal\field\Entity\FieldConfig; use Drupal\field\Entity\FieldStorageConfig; -use Drupal\Core\Entity\Entity\EntityFormDisplay; /** * Tests user registration forms with additional fields. @@ -87,19 +86,17 @@ public function testRegistrationWithUserFields() { $this->page->fillField('edit-name', $name); $this->page->fillField('edit-mail', $name . '@example.com'); $this->page->pressButton('edit-submit'); - $this->webAssert->assertWaitOnAjaxRequest(); $this->assertRegistrationFormCacheTagsWithUserFields(); $this->webAssert->pageTextContains(t('@name field is required.', ['@name' => $field->label()])); // Invalid input. $this->page->fillField('edit-test-user-field-0-value', '-1'); $this->page->pressButton('edit-submit'); - $this->webAssert->assertWaitOnAjaxRequest(); $this->assertRegistrationFormCacheTagsWithUserFields(); $this->webAssert->pageTextContains($field->label() . ' does not accept the value -1.'); // Submit with valid data. - $value = mt_rand(1, 255); + $value = (string) mt_rand(1, 255); $this->page->fillField('edit-test-user-field-0-value', $value); $this->page->pressButton('edit-submit'); // Check user fields. @@ -114,12 +111,14 @@ public function testRegistrationWithUserFields() { foreach (['js', 'nojs'] as $js) { $this->drupalGet('user/register'); $this->assertRegistrationFormCacheTagsWithUserFields(); - // Add two inputs. if ($js == 'js') { - $field_test_user_add_more = $this->page->find('css', 'edit-test-user-field-add-more'); + $field_test_user_add_more = $this->page->find('css', '#edit-test-user-field-add-more'); $field_test_user_add_more->click(); + $this->webAssert->waitForField('input[name="test_user_field[1][value]"]'); + $field_test_user_add_more->click(); + $this->webAssert->waitForField('input[name="test_user_field[2][value]"]'); } else { $this->page->pressButton('edit-test-user-field-add-more'); @@ -130,8 +129,8 @@ public function testRegistrationWithUserFields() { $this->page->fillField('edit-name', $name); $this->page->fillField('edit-mail', $name . '@example.com'); $this->page->fillField('edit-test-user-field-0-value', $value); - $this->page->fillField('edit-test-user-field-1-value', $value + 1); - $this->page->fillField('edit-test-user-field-2-value', $value + 1); + $this->page->fillField('edit-test-user-field-1-value', $value . '1'); + $this->page->fillField('edit-test-user-field-2-value', $value . '2'); $this->page->pressButton('edit-submit'); // Check user fields. @@ -139,8 +138,8 @@ public function testRegistrationWithUserFields() { ->loadByProperties(['name' => $name, 'mail' => $name . '@example.com']); $new_user = reset($accounts); $this->assertEquals($value, $new_user->test_user_field[0]->value, t('@js : The field value was correctly saved.', ['@js' => $js])); - $this->assertEquals($value + 1, $new_user->test_user_field[1]->value, t('@js : The field value was correctly saved.', ['@js' => $js])); - $this->assertEquals($value + 2, $new_user->test_user_field[2]->value, t('@js : The field value was correctly saved.', ['@js' => $js])); + $this->assertEquals($value . '1', $new_user->test_user_field[1]->value, t('@js : The field value was correctly saved.', ['@js' => $js])); + $this->assertEquals($value . '2', $new_user->test_user_field[2]->value, t('@js : The field value was correctly saved.', ['@js' => $js])); } }