Guest User

Untitled

a guest
Feb 16th, 2023
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. import pytest
  2. from phone_parser import parse_phone_number
  3.  
  4. @pytest.mark.parametrize("phone_number, expected_result", [
  5. ('555-123-4567', {'area_code': '555', 'prefix': '123', 'line_number': '4567'}),
  6. ('(555) 123-4567', {'area_code': '555', 'prefix': '123', 'line_number': '4567'}),
  7. ('555.123.4567', {'area_code': '555', 'prefix': '123', 'line_number': '4567'}),
  8. ('5551234567', {'area_code': '555', 'prefix': '123', 'line_number': '4567'}),
  9. ('1-555-123-4567', {'area_code': '555', 'prefix': '123', 'line_number': '4567'}),
  10. ('+44 7911 123456', {'country_code': '44', 'prefix': '7911', 'line_number': '123456'}),
  11. ('+1 650-253-0000 x123', {'country_code': '1', 'area_code': '650', 'prefix': '253', 'line_number': '0000', 'extension': '123'}),
  12. ('+86 10-12345678 ext 123', {'country_code': '86', 'area_code': '10', 'prefix': '12345678', 'extension': '123'}),
  13. ('01155-123-4567', {'country_code': '55', 'area_code': '123', 'prefix': '456', 'line_number': '7'}),
  14. ('01181 3 1234 5678', {'country_code': '81', 'area_code': '3', 'prefix': '1234', 'line_number': '5678'})
  15. ])
  16. def test_parse_phone_number_valid(phone_number, expected_result):
  17. assert parse_phone_number(phone_number) == expected_result
  18.  
  19.  
  20. @pytest.mark.parametrize("phone_number", [
  21. '5551234',
  22. '55512345678',
  23. '1-555-1234-567',
  24. '(555)123-4567',
  25. '555-123-4567-',
  26. '+1 555-123-4567-',
  27. '+123 1234 5678-',
  28. '+33 (0) 1 23 45 67 89-',
  29. '+86 10-12345678-',
  30. '01155-1234-5678',
  31. '01181 3 1234 56789',
  32. '+1 650-253-0000 x1234',
  33. '+86 10-12345678 ext 1234'
  34. ])
  35. def test_parse_phone_number_invalid(phone_number):
  36. assert parse_phone_number(phone_number) is None
Advertisement
Add Comment
Please, Sign In to add comment