def test_is_valid_phone_number_with_round_brackets_on_area_code():
    """
    Positive Testing
    Valid phone number given with round brackets on area code.
    """
    phone = '(416) 789-5308'
    result = Phone().parse_phone_number(phone)
    assert result.get('area_code') == '416'
    assert result.get('trunk') == '789'
    assert result.get('phone_number') == '5308'
def test_is_valid_phone_number_with_hyphen():
    """
    Positive Testing
    Valid phone number given separated by hyphen(-).
    """
    phone = '416-789-5308'
    result = Phone().parse_phone_number(phone)
    assert result.get('area_code') == '416'
    assert result.get('trunk') == '789'
    assert result.get('phone_number') == '5308'
def test_is_valid_phone_number_with_extension_specified_by_ext():
    """
    Positive Testing
    Valid phone number with extension specified by ext.
    """
    phone = '416-789-5308 ext. 1111'
    result = Phone().parse_phone_number(phone)
    assert result.get('area_code') == '416'
    assert result.get('trunk') == '789'
    assert result.get('phone_number') == '5308'
    assert result.get('extension') == '1111'
def test_is_valid_phone_number_with_extension_specified_by_hash():
    """
    Positive Testing
    Valid phone number with extension specified by #.
    """
    phone = 'emergency 1-(416) 789.5308 #1111'
    result = Phone().parse_phone_number(phone)
    assert result.get('area_code') == '416'
    assert result.get('trunk') == '789'
    assert result.get('phone_number') == '5308'
    assert result.get('extension') == '1111'