def test_invalid_phone_numbers(self, invalid_phone_numbers): for raw_number in invalid_phone_numbers: try: number = PhoneNumber(raw_number, "FI") assert not number.is_valid_number() except: pass
def test_invalid_phone_numbers(self): for raw_number in self.invalid_phone_numbers: try: number = PhoneNumber(raw_number, 'FI') assert not number.is_valid_number() except: pass
def test_invalid_phone_numbers(self): for raw_number in self.invalid_phone_numbers: try: number = PhoneNumber(raw_number, 'FI') assert not number.is_valid_number() except: pass
class PhoneNumberField(StringField): """ A string field representing a PhoneNumber object from `SQLAlchemy-Utils`_. .. _SQLAlchemy-Utils: https://github.com/kvesteri/sqlalchemy-utils :param region: Country code of the phone number. :param display_format: The format in which the phone number is displayed. """ widget = TelInput() error_msg = u'Not a valid phone number value' def __init__( self, label=None, validators=None, region='US', display_format='national', **kwargs ): super(PhoneNumberField, self).__init__(label, validators, **kwargs) self.region = region self.display_format = display_format def _value(self): # self.data holds a PhoneNumber object if the form is valid, # otherwise it will contain a string. if self.data: try: return getattr(self.data, self.display_format) except AttributeError: return self.data else: return u'' def process_formdata(self, valuelist): import phonenumbers if valuelist: if valuelist[0] == u'': self.data = None else: self.data = valuelist[0] try: self.data = PhoneNumber( valuelist[0], self.region ) if not self.data.is_valid_number(): raise ValueError(self.gettext(self.error_msg)) except phonenumbers.phonenumberutil.NumberParseException: raise ValueError(self.gettext(self.error_msg))
class PhoneNumberField(StringField): """ A string field representing a PhoneNumber object from `SQLAlchemy-Utils`_. .. _SQLAlchemy-Utils: https://github.com/kvesteri/sqlalchemy-utils :param country_code: Country code of the phone number. :param display_format: The format in which the phone number is displayed. """ widget = TelInput() error_msg = u'Not a valid phone number value' def __init__(self, label=None, validators=None, country_code='US', display_format='national', **kwargs): super(PhoneNumberField, self).__init__(label, validators, **kwargs) self.country_code = country_code self.display_format = display_format def _value(self): # self.data holds a PhoneNumber object, use it before falling back # to self.rawdata which holds a string if self.data: return getattr(self.data, self.display_format) elif self.raw_data: return self.raw_data[0] else: return u'' def process_formdata(self, valuelist): import phonenumbers if valuelist: if valuelist[0] == u'': self.data = None else: try: self.data = PhoneNumber(valuelist[0], self.country_code) if not self.data.is_valid_number(): self.data = None raise ValueError(self.gettext(self.error_msg)) except phonenumbers.phonenumberutil.NumberParseException: self.data = None raise ValueError(self.gettext(self.error_msg))
class PhoneNumberField(StringField): """ A string field representing a PhoneNumber object from `SQLAlchemy-Utils`_. .. _SQLAlchemy-Utils: https://github.com/kvesteri/sqlalchemy-utils :param country_code: Country code of the phone number. :param display_format: The format in which the phone number is displayed. """ widget = TelInput() error_msg = u'Not a valid phone number value' def __init__(self, label=None, validators=None, country_code='US', display_format='national', **kwargs): super(PhoneNumberField, self).__init__(label, validators, **kwargs) self.country_code = country_code self.display_format = display_format def _value(self): # self.data holds a PhoneNumber object, use it before falling back # to self.rawdata which holds a string if self.data: return getattr(self.data, self.display_format) elif self.raw_data: return self.raw_data[0] else: return u'' def process_formdata(self, valuelist): import phonenumbers if valuelist: if valuelist[0] == u'': self.data = None else: try: self.data = PhoneNumber( valuelist[0], self.country_code ) if not self.data.is_valid_number(): self.data = None raise ValueError(self.gettext(self.error_msg)) except phonenumbers.phonenumberutil.NumberParseException: self.data = None raise ValueError(self.gettext(self.error_msg))
def test_valid_phone_numbers(self, valid_phone_numbers): for raw_number in valid_phone_numbers: number = PhoneNumber(raw_number, "FI") assert number.is_valid_number()
def test_valid_phone_numbers(self): for raw_number in self.valid_phone_numbers: number = PhoneNumber(raw_number, 'FI') assert number.is_valid_number()
def test_invalid_phone_numbers__is_valid_number(self, raw_number): number = PhoneNumber(raw_number, 'FI') assert not number.is_valid_number()
def test_valid_phone_numbers(self): for raw_number in self.valid_phone_numbers: number = PhoneNumber(raw_number, 'FI') assert number.is_valid_number()
def _deserialize(self, value: str, attr, data): phone = PhoneNumber(value) if not phone.is_valid_number(): raise ValueError('The phone number is invalid.') return phone
def test_invalid_phone_numbers__is_valid_number(self, raw_number): number = PhoneNumber(raw_number, 'FI') assert not number.is_valid_number()