import pytest from ExtractDomainFromUrlFormat import extract_domain, unescape_url @pytest.mark.parametrize( "input,domain", [ ("http://this.is.test.com", "test.com"), ("http:example.com", "example.com"), ("http:\\\\example.com", "example.com"), ("https://caseapi.phishlabs.com", "phishlabs.com"), ("www.bücher.de", "bücher.de"), ( "https://urldefense.proofpoint.com/v2/url?u=http-3A__go.getpostman.com_y4wULsdG0h0DDMY0Dv00100&d=DwMFaQ&c=ywDJJevdGcjv4rm9P3FcNg&r=s5kA2oIAQRXsacJiBKmTORIWyRN39ZKhobje2GyRgNs&m=vN1dVSiZvEoM9oExtQqEptm9Dbvq9tnjACDZzrBLaWI&s=zroN7KQdBCPBOfhOmv5SP1DDzZKZ1y9I3x4STS5PbHA&e=", "getpostman.com", ), # noqa: E501 ("hxxps://www[.]demisto[.]com", "demisto.com"), ( "https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftwitter.com%2FPhilipsBeLux&data=02|01||cb2462dc8640484baf7608d638d2a698|1a407a2d76754d178692b3ac285306e4|0|0|636758874714819880&sdata=dnJiphWFhnAKsk5Ps0bj0p%2FvXVo8TpidtGZcW6t8lDQ%3D&reserved=0%3E%5bcid:image003.gif@01CF4D7F.1DF62650%5d%3C", "twitter.com", ), # noqa: E501 disable-secrets-detection ], ) # noqa: E124 def test_extract_domain(input, domain): res = extract_domain(input) assert res == domain @pytest.mark.parametrize( "input,url", [("http:example.com", "http://example.com"), ("http:\\\\example.com", "http://example.com")] ) # noqa: E124 def test_unescaped_url(input, url): unescaped_urls = unescape_url(input) assert unescaped_urls == url