Fixed issue with Min/Max rules using decimals

This commit is contained in:
Justin Hook 2014-04-01 21:17:00 +01:00
parent bad2743912
commit 4fb6f478ef
2 changed files with 30 additions and 2 deletions

View File

@ -224,7 +224,7 @@ class Validator
*/
protected function validateMin($field, $value, $params)
{
return (int) $value >= $params[0];
return $value >= $params[0];
}
/**
@ -238,7 +238,7 @@ class Validator
*/
protected function validateMax($field, $value, $params)
{
return (int) $value <= $params[0];
return $value <= $params[0];
}
/**

View File

@ -154,6 +154,13 @@ class ValidateTest extends BaseTestCase
$this->assertTrue($v->validate());
}
public function testMinValidDecimal()
{
$v = new Validator(array('num' => 0.9));
$v->rule('min', 'num', 0.5);
$this->assertTrue($v->validate());
}
public function testMinInvalid()
{
$v = new Validator(array('num' => 5));
@ -161,6 +168,13 @@ class ValidateTest extends BaseTestCase
$this->assertFalse($v->validate());
}
public function testMinInvalidDecimal()
{
$v = new Validator(array('num' => 0.5));
$v->rule('min', 'num', 0.9);
$this->assertFalse($v->validate());
}
public function testMaxValid()
{
$v = new Validator(array('num' => 5));
@ -168,6 +182,13 @@ class ValidateTest extends BaseTestCase
$this->assertTrue($v->validate());
}
public function testMaxValidDecimal()
{
$v = new Validator(array('num' => 0.4));
$v->rule('max', 'num', 0.5);
$this->assertTrue($v->validate());
}
public function testMaxInvalid()
{
$v = new Validator(array('num' => 5));
@ -175,6 +196,13 @@ class ValidateTest extends BaseTestCase
$this->assertFalse($v->validate());
}
public function testMaxInvalidDecimal()
{
$v = new Validator(array('num' => 0.9));
$v->rule('max', 'num', 0.5);
$this->assertFalse($v->validate());
}
public function testInValid()
{
$v = new Validator(array('color' => 'green'));