Пример #1
0
    def test_result(self):
        v = VATIN(VALID_VIES_COUNTRY_CODE, VALID_VIES_NUMBER)

        self.assertFalse(hasattr(v, 'result'))
        self.assertTrue(v.is_valid())

        # v should have a result now
        self.assertTrue(hasattr(v, 'result'))

        self.assertEqual(v.result['countryCode'], VALID_VIES_COUNTRY_CODE)
        self.assertEqual(v.result['vatNumber'], VALID_VIES_NUMBER)
Пример #2
0
 def clean(self, value):
     try:
         vatin = VATIN(*value)
         if vatin.is_valid():
             return super(VATINField, self).clean(value)
         else:
             raise ValidationError(_('%(value)s is not a valid European VAT.'), code='invalid',
                                   params={'value': self.compress(value)})
     except ValueError:
         raise ValidationError(_('%(value)s is not a valid European VAT.'), code='invalid',
                               params={'value': self.compress(value)})
Пример #3
0
    def test_raises_when_suds_WebFault(self, mock_client):
        """Raises an error if suds raises a WebFault"""

        mock_checkVat = mock_client.return_value.service.checkVat
        mock_checkVat.side_effect = WebFault(500, 'error')

        v = VATIN(VALID_VIES_COUNTRY_CODE, VALID_VIES_NUMBER)

        with self.assertRaises(ValueError):
            v.is_valid()

        mock_checkVat.assert_called_with(VALID_VIES_COUNTRY_CODE, VALID_VIES_NUMBER)
Пример #4
0
    def clean(self, value):
        if not value or not isinstance(value, (list, tuple)):
            if not value or not [v for v in value if v not in self.empty_values]:
                if self.required:
                    raise ValidationError(self.error_messages["required"], code="required")
                else:
                    return self.compress([])
        else:
            try:
                vatin = VATIN(*value)
                if vatin.is_valid():
                    self._vies_result = vatin.result
                    return super(VATINField, self).clean(value)
            except ValueError:
                pass

            raise ValidationError(
                _("%(value)s is not a valid European VAT."), code="invalid", params={"value": self.compress(value)}
            )
Пример #5
0
    def test_is_valid(self):
        v = VATIN(VALID_VIES_COUNTRY_CODE, VALID_VIES_NUMBER)

        self.assertTrue(v.is_valid())
Пример #6
0
 def test_country_code_getter(self):
     v = VATIN(VALID_VIES_COUNTRY_CODE.lower(), VALID_VIES_NUMBER)
     self.assertEqual(v.country_code, VALID_VIES_COUNTRY_CODE)
Пример #7
0
 def test_verified(self):
     with self.assertRaises(ValueError):
         VATIN('xx', VALID_VIES_NUMBER)
Пример #8
0
 def test_creation(self):
     try:
         VATIN(VALID_VIES_COUNTRY_CODE, VALID_VIES_NUMBER)
     except Exception as e:
         self.fail(e.message)