From 19b66b86173bf42eb9316fc6eccd6131f60bb99c Mon Sep 17 00:00:00 2001 From: predominant Date: Fri, 9 Apr 2010 13:30:58 +1000 Subject: [PATCH] Change luhn validation to public. --- cake/libs/validation.php | 12 +++--- cake/tests/cases/libs/validation.test.php | 46 +++++++++++------------ 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/cake/libs/validation.php b/cake/libs/validation.php index 60e3191c5c6..1c4c50c10b4 100644 --- a/cake/libs/validation.php +++ b/cake/libs/validation.php @@ -210,7 +210,7 @@ public function blank($check) { * @param string $regex A custom regex can also be passed, this will be used instead of the defined regex values * @return boolean Success * @access public - * @see Validation::_luhn() + * @see Validation::luhn() */ function cc($check, $type = 'fast', $deep = false, $regex = null) { $_this =& Validation::getInstance(); @@ -231,7 +231,7 @@ function cc($check, $type = 'fast', $deep = false, $regex = null) { if (!is_null($_this->regex)) { if ($_this->_check()) { - return $_this->_luhn(); + return $_this->luhn(); } } $cards = array( @@ -258,7 +258,7 @@ function cc($check, $type = 'fast', $deep = false, $regex = null) { $_this->regex = $cards['all'][strtolower($value)]; if ($_this->_check()) { - return $_this->_luhn(); + return $_this->luhn(); } } } elseif ($_this->type == 'all') { @@ -266,14 +266,14 @@ function cc($check, $type = 'fast', $deep = false, $regex = null) { $_this->regex = $value; if ($_this->_check()) { - return $_this->_luhn(); + return $_this->luhn(); } } } else { $_this->regex = $cards['fast']; if ($_this->_check()) { - return $_this->_luhn(); + return $_this->luhn(); } } } @@ -956,7 +956,7 @@ protected function _extract($params) { * @see http://en.wikipedia.org/wiki/Luhn_algorithm * @return boolean Success */ - protected function _luhn() { + public function luhn() { $_this =& Validation::getInstance(); if ($_this->deep !== true) { return true; diff --git a/cake/tests/cases/libs/validation.test.php b/cake/tests/cases/libs/validation.test.php index b708d774292..1aec086e25e 100644 --- a/cake/tests/cases/libs/validation.test.php +++ b/cake/tests/cases/libs/validation.test.php @@ -707,73 +707,73 @@ function testLuhn() { //American Express $this->Validation->check = '370482756063980'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //BankCard $this->Validation->check = '5610745867413420'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Diners Club 14 $this->Validation->check = '30155483651028'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //2004 MasterCard/Diners Club Alliance International 14 $this->Validation->check = '36747701998969'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //2004 MasterCard/Diners Club Alliance US & Canada 16 $this->Validation->check = '5597511346169950'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Discover $this->Validation->check = '6011802876467237'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //enRoute $this->Validation->check = '201496944158937'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //JCB 15 digit $this->Validation->check = '210034762247893'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //JCB 16 digit $this->Validation->check = '3096806857839939'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Maestro (debit card) $this->Validation->check = '5020147409985219'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Mastercard $this->Validation->check = '5580424361774366'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Solo 16 $this->Validation->check = '6767432107064987'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Solo 18 $this->Validation->check = '676714834398858593'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Solo 19 $this->Validation->check = '6767838565218340113'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Switch 16 $this->Validation->check = '5641829171515733'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Switch 18 $this->Validation->check = '493622764224625174'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Switch 19 $this->Validation->check = '6759603460617628716'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //VISA 13 digit $this->Validation->check = '4024007174754'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //VISA 16 digit $this->Validation->check = '4916375389940009'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Visa Electron $this->Validation->check = '4175003346287100'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); //Voyager $this->Validation->check = '869940697287073'; - $this->assertTrue($this->Validation->_luhn()); + $this->assertTrue($this->Validation->luhn()); $this->Validation->check = '0000000000000000'; - $this->assertFalse($this->Validation->_luhn()); + $this->assertFalse($this->Validation->luhn()); $this->Validation->check = '869940697287173'; - $this->assertFalse($this->Validation->_luhn()); + $this->assertFalse($this->Validation->luhn()); } /**