def clean_cpf(cpf) -> str: """ >>> PersonInteractor.clean_cpf('060.215.473-14') '06021547314' """ if not pycpf.validate(cpf): raise ValueError("Invalid CPF") clean_cpf = cpf_compatible.clear_punctuation(cpf) return clean_cpf
def validate_custom_fields(self, **kwargs): """ O :attr:`taxpayer_id` precisa ser um CPF válido. Então verificamos isso. Args: raise_exception: Quando algum campo está faltando ou CPF é inválido **kwargs: """ errors = [] if self._allow_empty: return errors if not cpf.validate(self.taxpayer_id): errors.append(FieldError("taxpayer_id", "taxpayer_id inválido!")) return errors
def create(self, validated_data): cpf_or_cnpj = validated_data.get('cpf_or_cnpj', False) if not cpf_or_cnpj: data = Empresas.objects.create(**validated_data) elif cpf.validate(cpf_or_cnpj): instance = get_object_or_404(User, cpf=cpf_or_cnpj) # Instance Pessoa del validated_data['cpf_or_cnpj'] data = Empresas.objects.create(**validated_data, dono_pessoa=instance) elif cnpj.validate(cpf_or_cnpj): instance = get_object_or_404(Empresas, cnpj=cpf_or_cnpj) # Instance Empresa del validated_data['cpf_or_cnpj'] data = Empresas.objects.create(**validated_data, dono_empresa=instance) return data
def validate_identifiers(cls, taxpayer_id, ein): """ Valida tupla de valores de identificação. Raises: :class:`.ValidationError` quando é passado os dois, ou nenhum, ou quando o identificador passado é inválido # noqa """ if (taxpayer_id is not None and ein is not None) or (taxpayer_id is None and ein is None): raise ValidationError( cls, FieldError( f"{BusinessOrIndividualModel.INDIVIDUAL_IDENTIFIER} " f"ou {BusinessOrIndividualModel.BUSINESS_IDENTIFIER}", "identificadores faltando!", ), ) elif taxpayer_id is not None and not cpf.validate(taxpayer_id): raise ValidationError( cls, FieldError("taxpayer_id", "taxpayer_id inválido!")) elif ein is not None and not cnpj.validate(ein): raise ValidationError(cls, FieldError("ein", "ein inválido!"))
def test_validate_cpf_with_alphabetic_characters(self): self.assertFalse(cpf.validate(self.invalid_cpf_with_alphabetic))
def test_validate_masked_unicode_cpf_false(self): self.assertFalse(cpf.validate(u"111.444.777-38"))
def test_validate_cpf_unicode_false(self): self.assertFalse(cpf.validate(u"11144477736"))
def test_validate_cpf_with_same_numbers(self): for i in range(10): self.assertFalse(cpf.validate("{0}".format(i) * 11))
def test_validate_cpf_false(self): self.assertFalse(cpf.validate(self.invalid_cpf))
def process_formdata(self, valuelist): if valuelist and cpf.validate(valuelist[0]): self.data = formatar_cpf(valuelist[0], pontuacao=False) else: self.data = None raise ValueError('CPF inválido')
def compare(self, a, b): return not cpf.validate(a)
def test_validate_cpf_true(self): self.assertTrue(cpf.validate(self.valid_cpf))
def test_mask_invalid_cpf(self): self.assertFalse(cpf.validate(mask.mask_cpf_cnpj(self.invalid_cpf)))
def test_mask_valid_cpf(self): self.assertTrue(cpf.validate(mask.mask_cpf_cnpj(self.valid_cpf)))
def validate_cpf(value): if not cpf.validate(value): raise ValidationError("%s is not a valid CPF number." % value)
def test_validate_cpf_false(self): self.assertFalse(cpf.validate(self.invalid_cpf))
def test_validate_masked_cnpj_true(self): self.assertTrue(cpf.validate(self.masked_valid_cpf))
def test_validate_masked_cpf_false(self): self.assertFalse(cpf.validate(self.masked_invalid_cpf))
def validate_cpf_type(data): if not cpf.validate(data): raise ValidationError('CPF inválido!')
def test_validate_cpf_with_same_numbers(self): for i in range(10): self.assertFalse(cpf.validate( '{0}'.format(i) * 11 ))
def test_validate_masked_cpf_true(self): self.assertTrue(cpf.validate(self.masked_valid_cpf))
def test_validate_cpf_unicode_true(self): self.assertTrue(cpf.validate(u'11144477735'))
def test_validate_masked_cpf_false(self): self.assertFalse(cpf.validate(self.masked_invalid_cpf))
def test_validate_cpf_unicode_false(self): self.assertFalse(cpf.validate(u'11144477736'))
def test_validate_cpf_unicode_true(self): self.assertTrue(cpf.validate(u"11144477735"))
def test_validate_masked_unicode_cpf_true(self): self.assertTrue(cpf.validate(u'111.444.777-35'))
def test_validate_masked_unicode_cpf_true(self): self.assertTrue(cpf.validate(u"111.444.777-35"))
def test_validate_masked_unicode_cpf_false(self): self.assertFalse(cpf.validate(u'111.444.777-38'))
def test_validate_cpf_with_whitespaces(self): self.assertFalse(cpf.validate(self.invalid_cpf_whitespaces))
def test_valif_cpf_without_mask_true(self): cpf_result =(self.masked_valid_cpf.replace(".","")).replace("-","") self.assertTrue(cpf.validate(cpf_result))
def compare(self, a, b): return not cpf.validate(a)
def test_validate_cpf_false(self): self.assertFalse(cpf.validate(self.invalid_cpf)) for i in range(10): self.assertFalse(cpf.validate('{0}'.format(i) * 11))