From 63655bf44ad7c3b2483c4a3c112831326f92e68c Mon Sep 17 00:00:00 2001 From: Dries Vints Date: Tue, 13 Apr 2021 15:39:47 +0200 Subject: [PATCH] Revert "[6.x] Fix required_if boolean validation (#36967)" This reverts commit e1f36fa3819c0d4b155dadcf19926d73045b9784. --- .../Validation/Concerns/ValidatesAttributes.php | 13 +------------ tests/Validation/ValidationValidatorTest.php | 11 ----------- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/src/Illuminate/Validation/Concerns/ValidatesAttributes.php b/src/Illuminate/Validation/Concerns/ValidatesAttributes.php index 68b38aa8491c..13fe1a648108 100644 --- a/src/Illuminate/Validation/Concerns/ValidatesAttributes.php +++ b/src/Illuminate/Validation/Concerns/ValidatesAttributes.php @@ -1475,24 +1475,13 @@ protected function prepareValuesAndOther($parameters) $values = array_slice($parameters, 1); - if ($this->shouldConvertToBoolean($parameters[0]) || is_bool($other)) { + if (is_bool($other)) { $values = $this->convertValuesToBoolean($values); } return [$values, $other]; } - /** - * Check if parameter should be converted to boolean. - * - * @param string $parameter - * @return bool - */ - protected function shouldConvertToBoolean($parameter) - { - return in_array('boolean', Arr::get($this->rules, $parameter, [])); - } - /** * Convert the given values to boolean if they are string "true" / "false". * diff --git a/tests/Validation/ValidationValidatorTest.php b/tests/Validation/ValidationValidatorTest.php index 2938f18e92b0..4ac71213c984 100755 --- a/tests/Validation/ValidationValidatorTest.php +++ b/tests/Validation/ValidationValidatorTest.php @@ -1090,17 +1090,6 @@ public function testRequiredIf() $v = new Validator($trans, ['first' => 'dayle', 'last' => ''], ['last' => 'RequiredIf:first,taylor,dayle']); $this->assertFalse($v->passes()); $this->assertSame('The last field is required when first is dayle.', $v->messages()->first('last')); - - $trans = $this->getIlluminateArrayTranslator(); - $trans->addLines(['validation.required_if' => 'The :attribute field is required when :other is :value.'], 'en'); - $v = new Validator($trans, ['foo' => 0], [ - 'foo' => 'required|boolean', - 'bar' => 'required_if:foo,true', - 'baz' => 'required_if:foo,false', - ]); - $this->assertTrue($v->fails()); - $this->assertCount(1, $v->messages()); - $this->assertSame('The baz field is required when foo is 0.', $v->messages()->first('baz')); } public function testRequiredUnless()