added validation message to language file for required_with

Signed-off-by: Jason Walton <jwalton512@gmail.com>
This commit is contained in:
Jason Walton 2012-12-19 12:05:51 -07:00
parent 8ff052cbdb
commit 19cd539586
4 changed files with 40 additions and 4 deletions

View File

@ -58,6 +58,7 @@
"not_in" => "The selected :attribute is invalid.",
"numeric" => "The :attribute must be a number.",
"required" => "The :attribute field is required.",
"required_with" => "The :attribute field is required with :field",
"same" => "The :attribute and :other must match.",
"size" => array(
"numeric" => "The :attribute must be :size.",
@ -101,4 +102,4 @@
'attributes' => array(),
);
);

View File

@ -50,6 +50,7 @@
"not_in" => "The selected :attribute is invalid.",
"numeric" => "The :attribute must be a number.",
"required" => "The :attribute field is required.",
"required_with" => "The :attribute field is required with :field",
"same" => "The :attribute and :other must match.",
"size" => array(
"numeric" => "The :attribute must be :size.",
@ -93,4 +94,4 @@
'attributes' => array('test_attribute' => 'attribute'),
);
);

View File

@ -666,4 +666,24 @@ public function testCustomAttributesAreReplaced()
$this->assertEquals($expect, $v->errors->first('test_attribute'));
}
}
/**
* Test required_with attribute names are replaced.
*
* @group laravel
*/
public function testRequiredWithAttributesAreReplaced()
{
$lang = require path('app').'language/en/validation.php';
$data = array('first_name' => 'Taylor', 'last_name' => '');
$rules = array('first_name' => 'required', 'last_name' => 'required_with:first_name');
$v = Validator::make($data, $rules);
$v->valid();
$expect = str_replace(array(':attribute', ':field'), array('last name', 'first name'), $lang['required_with']);
$this->assertEquals($expect, $v->errors->first('last_name'));
}
}

View File

@ -863,6 +863,20 @@ protected function replace($message, $attribute, $rule, $parameters)
return $message;
}
/**
* Replace all place-holders for the required_with rule.
*
* @param string $message
* @param string $attribute
* @param string $rule
* @param array $parameters
* @return string
*/
protected function replace_required_with($message, $attribute, $rule, $parameters)
{
return str_replace(':field', $this->attribute($parameters[0]), $message);
}
/**
* Replace all place-holders for the between rule.
*
@ -1208,4 +1222,4 @@ public function __call($method, $parameters)
throw new \Exception("Method [$method] does not exist.");
}
}
}