public function rules() { return [[['price_range', 'automatic_transfer', 'address', 'cep', 'city', 'state', 'telephone', 'bank', 'bank_ag', 'account_type', 'bank_cc'], 'required', 'on' => 'request_verification'], [['company_name', 'business_type', 'person_type', 'name', 'resp_name', 'city', 'state'], 'string', 'max' => 255], [['address'], 'string', 'max' => 512], [['bank_ag'], 'string', 'max' => 12], [['physical_products', 'automatic_transfer'], 'boolean'], [['automatic_transfer'], 'default', 'value' => true], [['price_range'], 'in', 'range' => array_keys(self::getPriceRanges())], [['person_type'], 'in', 'range' => array_keys(self::getPersonTypes())], [['bank'], 'in', 'range' => array_keys(self::getBanks())], [['account_type'], 'in', 'range' => array_keys(self::getAccountTypes())], [['cnpj'], CnpjValidator::className()], [['cpf', 'resp_cpf'], CpfValidator::className()], [['cnpj', 'company_name', 'resp_name', 'resp_cpf'], 'when' => function ($model) { return $model->person_type === self::PERSONTYPE_JURIDICA; }], [['cpf', 'name'], 'when' => function ($model) { return $model->person_type === self::PERSONTYPE_FISICA; }]]; }
public function testValidateValue() { $val = new CnpjValidator(); $this->assertFalse($val->validate('789542284')); $this->assertFalse($val->validate('22222222222222')); $this->assertFalse($val->validate('22.222.222/2222-22')); $this->assertFalse($val->validate('32.458.657.0001-89')); $this->assertFalse($val->validate('32458657000189')); $this->assertTrue($val->validate('62.346.464/0001-01')); $this->assertTrue($val->validate('62346464000101')); }