def test_valid_form(self): # with all combinations of line endings (\r\n, \n, \r) numbers = [get_random_phone_number() for i in range(4)] punctuated_numbers = [format_phone_number(number) for number in numbers] file_content = b"""%s\r\n%s\n \n%s\r%s""" % ( punctuated_numbers[0], punctuated_numbers[1], punctuated_numbers[2], punctuated_numbers[3], ) blackwhitelist_file = ContentFile(file_content, name='bw.txt') data = {'import_file': blackwhitelist_file} rsp = self.client.post(self.url, data=data) # Assert that we redirect self.assertEqual(302, rsp.status_code) bwlist = self.model.objects.values_list('phone_number', flat=True) for number in numbers: self.assertIn(number, bwlist) self.assertEqual(len(bwlist), 4)
def test_valid_form(self): # with all combinations of line endings (\r\n, \n, \r) numbers = [get_random_phone_number() for i in range(4)] punctuated_numbers = [ format_phone_number(number) for number in numbers ] file_content = b"""%s\r\n%s\n \n%s\r%s""" % ( punctuated_numbers[0], punctuated_numbers[1], punctuated_numbers[2], punctuated_numbers[3], ) blackwhitelist_file = ContentFile(file_content, name='bw.txt') data = {'import_file': blackwhitelist_file} rsp = self.client.post(self.url, data=data) # Assert that we redirect self.assertEqual(302, rsp.status_code) bwlist = self.model.objects.values_list('phone_number', flat=True) for number in numbers: self.assertIn(number, bwlist) self.assertEqual(len(bwlist), 4)
def test_cleans_phone_number(self): number = get_random_phone_number() punctuated_number = format_phone_number(number) f = self.form(data={'phone_number': punctuated_number}) self.assertTrue(f.is_valid(), f.errors) self.assertEqual(f.cleaned_data['phone_number'], number)
def test_format_phone_number(self): self.assertEqual(format_phone_number('218123456789'), '+218 (0)12-345-6789') self.assertEqual(format_phone_number('8821612340058'), '+88216-12340058') self.assertEqual(format_phone_number('882161234005'), '+88216-1234005')
def to_number_formatted(self): return format_phone_number(self.to_number)
def from_number_formatted(self): return format_phone_number(self.from_number)