Commit 66d75d16 authored by Dries's avatar Dries

- Patch #547490 by ugerhard, Jody Lynn, Matt V.: entering only 'Confirm...

- Patch #547490 by ugerhard, Jody Lynn, Matt V.: entering only 'Confirm password' field passes validation and returns success message.
parent b0ab9f28
......@@ -2174,8 +2174,8 @@ function form_process_password_confirm($element) {
*/
function password_confirm_validate($element, &$element_state) {
$pass1 = trim($element['pass1']['#value']);
if (!empty($pass1)) {
$pass2 = trim($element['pass2']['#value']);
$pass2 = trim($element['pass2']['#value']);
if (!empty($pass1) || !empty($pass2)) {
if (strcmp($pass1, $pass2)) {
form_error($element, t('The specified passwords do not match.'));
}
......
......@@ -55,7 +55,7 @@ class UserRegistrationTestCase extends DrupalWebTestCase {
$edit['pass[pass1]'] = '99999.0';
$edit['pass[pass2]'] = '99999';
$this->drupalPost('user/register', $edit, t('Create new account'));
$this->assertText(t('The specified passwords do not match.'), t('Type mismatched passwords display an error message.'));
$this->assertText(t('The specified passwords do not match.'), t('Typing mismatched passwords displays an error message.'));
// Enter a correct password.
$edit['pass[pass1]'] = $new_pass = $this->randomName();
......@@ -1391,6 +1391,18 @@ class UserEditTestCase extends DrupalWebTestCase {
$this->drupalPost("user/$user1->uid/edit", $edit, t('Save'));
$this->assertRaw(t('The name %name is already taken.', array('%name' => $edit['name'])));
// Check that filling out a single password field does not validate.
$edit = array();
$edit['pass[pass1]'] = '';
$edit['pass[pass2]'] = $this->randomName();
$this->drupalPost("user/$user1->uid/edit", $edit, t('Save'));
$this->assertText(t("The specified passwords do not match."), t('Typing mismatched passwords displays an error message.'));
$edit['pass[pass1]'] = $this->randomName();
$edit['pass[pass2]'] = '';
$this->drupalPost("user/$user1->uid/edit", $edit, t('Save'));
$this->assertText(t("The specified passwords do not match."), t('Typing mismatched passwords displays an error message.'));
// Test that the error message appears when attempting to change the mail or
// pass without the current password.
$edit = array();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment