From 45d871897c07cc41ee1025df7dad686b023888fb Mon Sep 17 00:00:00 2001 From: Sjors van Dongen Date: Mon, 26 Dec 2016 15:49:21 +0100 Subject: [PATCH] [5.3] Illuminate\Validation\Rules\Unique bug fix (#16948) * Illuminate\Validation\Rules\Unique fix * Style update * Better if statement * Fix the test * Test completion --- src/Illuminate/Validation/Rules/Unique.php | 2 +- tests/Validation/ValidationUniqueRuleTest.php | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Illuminate/Validation/Rules/Unique.php b/src/Illuminate/Validation/Rules/Unique.php index 8285634af319..957966a4fc61 100644 --- a/src/Illuminate/Validation/Rules/Unique.php +++ b/src/Illuminate/Validation/Rules/Unique.php @@ -173,7 +173,7 @@ public function __toString() return rtrim(sprintf('unique:%s,%s,%s,%s,%s', $this->table, $this->column, - $this->ignore ?: 'NULL', + $this->ignore ? '"'.$this->ignore.'"' : 'NULL', $this->idColumn, $this->formatWheres() ), ','); diff --git a/tests/Validation/ValidationUniqueRuleTest.php b/tests/Validation/ValidationUniqueRuleTest.php index d0bc5a941784..99434d27d24e 100644 --- a/tests/Validation/ValidationUniqueRuleTest.php +++ b/tests/Validation/ValidationUniqueRuleTest.php @@ -9,8 +9,13 @@ public function testItCorrectlyFormatsAStringVersionOfTheRule() $this->assertEquals('unique:table,NULL,NULL,id,foo,bar', (string) $rule); $rule = new Illuminate\Validation\Rules\Unique('table', 'column'); - $rule->ignore(1, 'id_column'); + $rule->ignore('Taylor, Otwell', 'id_column'); $rule->where('foo', 'bar'); - $this->assertEquals('unique:table,column,1,id_column,foo,bar', (string) $rule); + $this->assertEquals('unique:table,column,"Taylor, Otwell",id_column,foo,bar', (string) $rule); + + $rule = new Illuminate\Validation\Rules\Unique('table', 'column'); + $rule->ignore(null, 'id_column'); + $rule->where('foo', 'bar'); + $this->assertEquals('unique:table,column,NULL,id_column,foo,bar', (string) $rule); } }