diff --git a/scripts/tests/test_validate_links.py b/scripts/tests/test_validate_links.py index a77950cb..64eae888 100644 --- a/scripts/tests/test_validate_links.py +++ b/scripts/tests/test_validate_links.py @@ -3,6 +3,7 @@ import unittest from validate.links import find_links_in_text +from validate.links import check_duplicate_links from validate.links import fake_user_agent from validate.links import get_host_from_link from validate.links import has_cloudflare_protection @@ -18,6 +19,18 @@ class FakeResponse(): class TestValidateLinks(unittest.TestCase): def setUp(self): + self.duplicate_links = [ + 'https://www.example.com', + 'https://www.example.com', + 'https://www.example.com', + 'https://www.anotherexample.com', + ] + self.no_duplicate_links = [ + 'https://www.firstexample.com', + 'https://www.secondexample.com', + 'https://www.anotherexample.com', + ] + self.code_200 = 200 self.code_403 = 403 self.code_503 = 503 @@ -63,7 +76,26 @@ class TestValidateLinks(unittest.TestCase): find_links_in_text() find_links_in_text(1) find_links_in_text(True) - + + def test_if_check_duplicate_links_has_the_correct_return(self): + result_1 = check_duplicate_links(self.duplicate_links) + result_2 = check_duplicate_links(self.no_duplicate_links) + + self.assertIsInstance(result_1, tuple) + self.assertIsInstance(result_2, tuple) + + has_duplicate_links, links = result_1 + no_duplicate_links, no_links = result_2 + + self.assertTrue(has_duplicate_links) + self.assertFalse(no_duplicate_links) + + self.assertIsInstance(links, list) + self.assertIsInstance(no_links, list) + + self.assertEqual(len(links), 2) + self.assertEqual(len(no_links), 0) + def test_if_fake_user_agent_has_a_str_as_return(self): user_agent = fake_user_agent() self.assertIsInstance(user_agent, str)