mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 11:11:39 +09:00
Bug fix for Argument class - added global $lang in validation methods.
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8725 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
f64e950463
commit
da8302fa4a
2 changed files with 67 additions and 31 deletions
|
|
@ -97,6 +97,7 @@
|
|||
|
||||
function checkFilter($filter_type){
|
||||
if(isset($this->value) && $this->value != ''){
|
||||
global $lang;
|
||||
$val = $this->value;
|
||||
$key = $this->name;
|
||||
switch($filter_type) {
|
||||
|
|
@ -146,25 +147,28 @@
|
|||
|
||||
function checkMaxLength($length){
|
||||
if($this->value && (strlen($this->value) > $length)){
|
||||
global $lang;
|
||||
$this->isValid = false;
|
||||
$key = $this->name;
|
||||
$this->errorMessage = new Object(-1, $lang->filter->outofrange, $lang->{$key} ? $lang->{$key} : $key);
|
||||
$this->errorMessage = new Object(-1, sprintf($lang->filter->outofrange, $lang->{$key} ? $lang->{$key} : $key));
|
||||
}
|
||||
}
|
||||
|
||||
function checkMinLength($length){
|
||||
if($this->value && (strlen($this->value) > $length)){
|
||||
if($this->value && (strlen($this->value) < $length)){
|
||||
global $lang;
|
||||
$this->isValid = false;
|
||||
$key = $this->name;
|
||||
$this->errorMessage = new Object(-1, $lang->filter->outofrange, $lang->{$key} ? $lang->{$key} : $key);
|
||||
$this->errorMessage = new Object(-1, sprintf($lang->filter->outofrange, $lang->{$key} ? $lang->{$key} : $key));
|
||||
}
|
||||
}
|
||||
|
||||
function checkNotNull(){
|
||||
if(!isset($this->value)){
|
||||
global $lang;
|
||||
$this->isValid = false;
|
||||
$key = $this->name;
|
||||
$this->errorMessage = new Object(-1, $lang->filter->isnull, $lang->{$key} ? $lang->{$key} : $key);
|
||||
$this->errorMessage = new Object(-1, sprintf($lang->filter->isnull, $lang->{$key} ? $lang->{$key} : $key));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,38 @@
|
|||
*/
|
||||
class ArgumentTest extends CubridTest {
|
||||
|
||||
public function testErrorMessageIsSent_NotNullCheck(){
|
||||
global $lang;
|
||||
include(_XE_PATH_.'common/lang/en.lang.php');
|
||||
|
||||
$page_argument = new Argument('page', $args->page);
|
||||
$page_argument->checkNotNull();
|
||||
$this->assertFalse($page_argument->isValid());
|
||||
$this->assertEquals("Please input a value for page", $page_argument->getErrorMessage()->message);
|
||||
}
|
||||
|
||||
public function testErrorMessageIsSent_MinLengthCheck(){
|
||||
global $lang;
|
||||
include(_XE_PATH_.'common/lang/en.lang.php');
|
||||
|
||||
$args->page = '123';
|
||||
$page_argument = new Argument('page', $args->page);
|
||||
$page_argument->checkMinLength(6);
|
||||
$this->assertFalse($page_argument->isValid());
|
||||
$this->assertEquals("Please align the text length of page", $page_argument->getErrorMessage()->message);
|
||||
}
|
||||
|
||||
public function testErrorMessageIsSent_MaxLengthCheck(){
|
||||
global $lang;
|
||||
include(_XE_PATH_.'common/lang/en.lang.php');
|
||||
|
||||
$args->page = '123';
|
||||
$page_argument = new Argument('page', $args->page);
|
||||
$page_argument->checkMaxLength(2);
|
||||
$this->assertFalse($page_argument->isValid());
|
||||
$this->assertEquals("Please align the text length of page", $page_argument->getErrorMessage()->message);
|
||||
}
|
||||
|
||||
/**
|
||||
* @todo Implement testGetType().
|
||||
*/
|
||||
|
|
@ -142,7 +174,7 @@ class ArgumentTest extends CubridTest {
|
|||
public function testCheckNotNullWhenNotNull() {
|
||||
$member_srl_argument = new ConditionArgument('member_srl', 20, 'equal');
|
||||
$member_srl_argument->checkNotNull();
|
||||
|
||||
|
||||
$this->assertEquals(true, $member_srl_argument->isValid());
|
||||
}
|
||||
|
||||
|
|
@ -152,17 +184,17 @@ class ArgumentTest extends CubridTest {
|
|||
public function testCheckNotNullWhenNull() {
|
||||
$member_srl_argument = new ConditionArgument('member_srl', null, 'equal');
|
||||
$member_srl_argument->checkNotNull();
|
||||
|
||||
|
||||
$this->assertEquals(false, $member_srl_argument->isValid());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks that argument value stays the same when both user value and default value are given
|
||||
*/
|
||||
public function testCheckDefaultValueWhenNotNull() {
|
||||
$member_srl_argument = new ConditionArgument('member_srl', 20, 'equal');
|
||||
$member_srl_argument->ensureDefaultValue(25);
|
||||
|
||||
$member_srl_argument->ensureDefaultValue(25);
|
||||
|
||||
$this->assertEquals(20, $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
|
|
@ -172,41 +204,41 @@ class ArgumentTest extends CubridTest {
|
|||
public function testCheckDefaultValueWhenNull() {
|
||||
$member_srl_argument = new ConditionArgument('member_srl', null, 'equal');
|
||||
$member_srl_argument->ensureDefaultValue(25);
|
||||
|
||||
|
||||
$this->assertEquals(25, $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks like prefix operation
|
||||
*/
|
||||
public function testCreateConditionValue_LikePrefix() {
|
||||
$member_srl_argument = new ConditionArgument('"mid"', 'forum', 'like_prefix');
|
||||
$member_srl_argument->createConditionValue();
|
||||
|
||||
|
||||
$this->assertEquals('forum%', $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks like tail operation
|
||||
*/
|
||||
public function testCreateConditionValue_LikeTail() {
|
||||
$member_srl_argument = new ConditionArgument('"mid"', 'forum', 'like_tail');
|
||||
$member_srl_argument->createConditionValue();
|
||||
|
||||
|
||||
$this->assertEquals('%forum', $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks like operation
|
||||
*/
|
||||
public function testCreateConditionValue_Like() {
|
||||
$member_srl_argument = new ConditionArgument('"mid"', 'forum', 'like');
|
||||
$member_srl_argument->createConditionValue();
|
||||
|
||||
|
||||
$this->assertEquals('%forum%', $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Checks in operation
|
||||
*/
|
||||
|
|
@ -214,10 +246,10 @@ class ArgumentTest extends CubridTest {
|
|||
$member_srl_argument = new ConditionArgument('"mid"', array('forum', 'board'), 'in');
|
||||
$member_srl_argument->createConditionValue();
|
||||
$member_srl_argument->setColumnType('varchar');
|
||||
|
||||
|
||||
$this->assertEquals('(\'forum\',\'board\')', $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks in operation
|
||||
*/
|
||||
|
|
@ -225,10 +257,10 @@ class ArgumentTest extends CubridTest {
|
|||
$member_srl_argument = new ConditionArgument('"module_srl"', array(3, 21), 'in');
|
||||
$member_srl_argument->setColumnType('number');
|
||||
$member_srl_argument->createConditionValue();
|
||||
|
||||
|
||||
$this->assertEquals('(3,21)', $member_srl_argument->getValue());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function testEnsureDefaultValueWithEmptyString(){
|
||||
$homepage_argument = new Argument('homepage', '');
|
||||
$homepage_argument->ensureDefaultValue('');
|
||||
|
|
@ -236,10 +268,10 @@ class ArgumentTest extends CubridTest {
|
|||
if(!$homepage_argument->isValid()) return $homepage_argument->getErrorMessage();
|
||||
$homepage_argument->setColumnType('varchar');
|
||||
|
||||
|
||||
|
||||
$this->assertEquals('\'\'', $homepage_argument->getValue());
|
||||
}
|
||||
|
||||
|
||||
public function testDefaultValue() {
|
||||
$default = new DefaultValue("var", '');
|
||||
$this->assertEquals('\'\'', $default->toString());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue