mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-26 14:26:54 +08:00
Renamed validator test models to be less specific.
This commit is contained in:
@ -103,32 +103,32 @@ INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (3, 2,
|
||||
|
||||
|
||||
/**
|
||||
* (MySQL-)Database Schema for ExistValidatorTest
|
||||
* (MySQL-)Database Schema for validator tests
|
||||
*/
|
||||
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_main CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_ref CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_main CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_ref CASCADE;
|
||||
|
||||
CREATE TABLE `tbl_validator_exist_main` (
|
||||
CREATE TABLE tbl_validator_main (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`field1` VARCHAR(255),
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE =InnoDB DEFAULT CHARSET =utf8;
|
||||
|
||||
CREATE TABLE `tbl_validator_exist_ref` (
|
||||
CREATE TABLE tbl_validator_ref (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`a_field` VARCHAR(255),
|
||||
`ref` INT(11),
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (a_field, ref) VALUES ('ref_to_5', 5);
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (a_field, ref) VALUES ('ref_to_5', 5);
|
||||
|
@ -94,30 +94,30 @@ INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (2, 3,
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (3, 2, 1, 40.0);
|
||||
|
||||
/**
|
||||
* (Postgres-)Database Schema for ExistValidatorTest
|
||||
* (Postgres-)Database Schema for validator tests
|
||||
*/
|
||||
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_main CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_ref CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_main CASCADE;
|
||||
DROP TABLE IF EXISTS tbl_validator_ref CASCADE;
|
||||
|
||||
CREATE TABLE tbl_validator_exist_main (
|
||||
CREATE TABLE tbl_validator_main (
|
||||
id integer not null primary key,
|
||||
field1 VARCHAR(255)
|
||||
);
|
||||
|
||||
CREATE TABLE tbl_validator_exist_ref (
|
||||
CREATE TABLE tbl_validator_ref (
|
||||
id integer not null primary key,
|
||||
a_field VARCHAR(255),
|
||||
ref integer
|
||||
);
|
||||
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (1, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (2, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (3, 'ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (4, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (5, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (1, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (2, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (3, 'ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (4, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (5, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
@ -88,32 +88,32 @@ INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (2, 3,
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (3, 2, 1, 40.0);
|
||||
|
||||
/**
|
||||
* (SqLite-)Database Schema for ExistValidatorTest
|
||||
* (SqLite-)Database Schema for validator tests
|
||||
*/
|
||||
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_main;
|
||||
DROP TABLE IF EXISTS tbl_validator_exist_ref;
|
||||
DROP TABLE IF EXISTS tbl_validator_main;
|
||||
DROP TABLE IF EXISTS tbl_validator_ref;
|
||||
|
||||
CREATE TABLE tbl_validator_exist_main (
|
||||
CREATE TABLE tbl_validator_main (
|
||||
id INT(11) NOT NULL,
|
||||
field1 VARCHAR(255),
|
||||
PRIMARY KEY (id)
|
||||
);
|
||||
|
||||
CREATE TABLE tbl_validator_exist_ref (
|
||||
CREATE TABLE tbl_validator_ref (
|
||||
id INT(11) NOT NULL,
|
||||
a_field VARCHAR(255),
|
||||
ref INT(11),
|
||||
PRIMARY KEY (id)
|
||||
);
|
||||
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_exist_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (1, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (2, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (3, 'ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (4, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (5, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_exist_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (1, 'just a string1');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (2, 'just a string2');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (3, 'just a string3');
|
||||
INSERT INTO tbl_validator_main (id, field1) VALUES (4, 'just a string4');
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (1, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (2, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (3, 'ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (4, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (5, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
@ -5,16 +5,17 @@ namespace yiiunit\data\validators\models;
|
||||
|
||||
use yii\db\ActiveRecord;
|
||||
|
||||
class ExistValidatorMainModel extends ActiveRecord
|
||||
class ValidatorTestMainModel extends ActiveRecord
|
||||
{
|
||||
public $testMainVal = 1;
|
||||
|
||||
public static function tableName()
|
||||
{
|
||||
return 'tbl_validator_exist_main';
|
||||
return 'tbl_validator_main';
|
||||
}
|
||||
|
||||
public function getReferences()
|
||||
{
|
||||
return $this->hasMany(ExistValidatorRefModel::className(), array('ref' => 'id'));
|
||||
return $this->hasMany(ValidatorTestRefModel::className(), array('ref' => 'id'));
|
||||
}
|
||||
}
|
@ -5,18 +5,19 @@ namespace yiiunit\data\validators\models;
|
||||
|
||||
use yii\db\ActiveRecord;
|
||||
|
||||
class ExistValidatorRefModel extends ActiveRecord
|
||||
class ValidatorTestRefModel extends ActiveRecord
|
||||
{
|
||||
|
||||
public $test_val = 2;
|
||||
public $test_val_fail = 99;
|
||||
|
||||
public static function tableName()
|
||||
{
|
||||
return 'tbl_validator_exist_ref';
|
||||
return 'tbl_validator_ref';
|
||||
}
|
||||
|
||||
public function getMain()
|
||||
{
|
||||
return $this->hasOne(ExistValidatorMainModel::className(), array('id' => 'ref'));
|
||||
return $this->hasOne(ValidatorTestMainModel::className(), array('id' => 'ref'));
|
||||
}
|
||||
}
|
@ -77,6 +77,11 @@ class CompareValidatorTest extends TestCase
|
||||
array($value + 1, false),
|
||||
array($value - 1, true),
|
||||
),
|
||||
//'non-op' => array(
|
||||
// array($value, false),
|
||||
// array($value + 1, false),
|
||||
// array($value - 1, false),
|
||||
//),
|
||||
|
||||
);
|
||||
}
|
||||
|
@ -7,8 +7,8 @@ use Yii;
|
||||
use yii\base\Exception;
|
||||
use yii\validators\ExistValidator;
|
||||
use yiiunit\data\ar\ActiveRecord;
|
||||
use yiiunit\data\validators\models\ExistValidatorMainModel;
|
||||
use yiiunit\data\validators\models\ExistValidatorRefModel;
|
||||
use yiiunit\data\validators\models\ValidatorTestMainModel;
|
||||
use yiiunit\data\validators\models\ValidatorTestRefModel;
|
||||
use yiiunit\framework\db\DatabaseTestCase;
|
||||
|
||||
class ExistValidatorTest extends DatabaseTestCase
|
||||
@ -39,7 +39,7 @@ class ExistValidatorTest extends DatabaseTestCase
|
||||
}
|
||||
// combine to save the time creating a new db-fixture set (likely ~5 sec)
|
||||
try {
|
||||
$val = new ExistValidator(array('className' => ExistValidatorMainModel::className()));
|
||||
$val = new ExistValidator(array('className' => ValidatorTestMainModel::className()));
|
||||
$val->validateValue('ref');
|
||||
$this->fail('Exception should have been thrown at this time');
|
||||
} catch (Exception $e) {
|
||||
@ -50,7 +50,7 @@ class ExistValidatorTest extends DatabaseTestCase
|
||||
|
||||
public function testValidateValue()
|
||||
{
|
||||
$val = new ExistValidator(array('className' => ExistValidatorRefModel::className(), 'attributeName' => 'id'));
|
||||
$val = new ExistValidator(array('className' => ValidatorTestRefModel::className(), 'attributeName' => 'id'));
|
||||
$this->assertTrue($val->validateValue(2));
|
||||
$this->assertTrue($val->validateValue(5));
|
||||
$this->assertFalse($val->validateValue(99));
|
||||
@ -60,39 +60,39 @@ class ExistValidatorTest extends DatabaseTestCase
|
||||
public function testValidateAttribute()
|
||||
{
|
||||
// existing value on different table
|
||||
$val = new ExistValidator(array('className' => ExistValidatorMainModel::className(), 'attributeName' => 'id'));
|
||||
$m = ExistValidatorRefModel::find(array('id' => 1));
|
||||
$val = new ExistValidator(array('className' => ValidatorTestMainModel::className(), 'attributeName' => 'id'));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 1));
|
||||
$val->validateAttribute($m, 'ref');
|
||||
$this->assertFalse($m->hasErrors());
|
||||
// non-existing value on different table
|
||||
$val = new ExistValidator(array('className' => ExistValidatorMainModel::className(), 'attributeName' => 'id'));
|
||||
$m = ExistValidatorRefModel::find(array('id' => 6));
|
||||
$val = new ExistValidator(array('className' => ValidatorTestMainModel::className(), 'attributeName' => 'id'));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 6));
|
||||
$val->validateAttribute($m, 'ref');
|
||||
$this->assertTrue($m->hasErrors('ref'));
|
||||
// existing value on same table
|
||||
$val = new ExistValidator(array('attributeName' => 'ref'));
|
||||
$m = ExistValidatorRefModel::find(array('id' => 2));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 2));
|
||||
$val->validateAttribute($m, 'test_val');
|
||||
$this->assertFalse($m->hasErrors());
|
||||
// non-existing value on same table
|
||||
$val = new ExistValidator(array('attributeName' => 'ref'));
|
||||
$m = ExistValidatorRefModel::find(array('id' => 5));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 5));
|
||||
$val->validateAttribute($m, 'test_val_fail');
|
||||
$this->assertTrue($m->hasErrors('test_val_fail'));
|
||||
// check for given value (true)
|
||||
$val = new ExistValidator();
|
||||
$m = ExistValidatorRefModel::find(array('id' => 3));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 3));
|
||||
$val->validateAttribute($m, 'ref');
|
||||
$this->assertFalse($m->hasErrors());
|
||||
// check for given defaults (false)
|
||||
$val = new ExistValidator();
|
||||
$m = ExistValidatorRefModel::find(array('id' => 4));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 4));
|
||||
$m->a_field = 'some new value';
|
||||
$val->validateAttribute($m, 'a_field');
|
||||
$this->assertTrue($m->hasErrors('a_field'));
|
||||
// check array
|
||||
$val = new ExistValidator(array('attributeName' => 'ref'));
|
||||
$m = ExistValidatorRefModel::find(array('id' => 2));
|
||||
$m = ValidatorTestRefModel::find(array('id' => 2));
|
||||
$m->test_val = array(1,2,3);
|
||||
$val->validateAttribute($m, 'test_val');
|
||||
$this->assertTrue($m->hasErrors('test_val'));
|
||||
|
Reference in New Issue
Block a user