import urllib.error import urllib.request import unittest URL = 'https://howdoyouconvert.com/apothecary-ounces-to-amu' class ApothecaryPageTests(unittest.TestCase): def test_apothecary_page_returns_success(self) -> None: """The published URL should return a 200 so the calculator page stays healthy.""" request = urllib.request.Request( URL, headers={ 'User-Agent': 'Mozilla/5.0', 'Accept': 'text/html,application/xhtml+xml', }, ) try: with urllib.request.urlopen(request, timeout=15) as response: status = response.getcode() except urllib.error.HTTPError as exc: self.fail(f'{URL} returned HTTP {exc.code} ({exc.reason})') except urllib.error.URLError as exc: self.fail(f'{URL} could not be fetched: {exc}') self.assertEqual(status, 200, f'{URL} returned {status}')