#!/usr/bin/env python3 import os import platform from sys import exit from test.base_test import HTTPS, SKIP_TEST from test.http_test import HTTPTest from misc.wget_file import WgetFile """ Test that Wget handles the --convert-links (-k) option correctly. Ensure that when downloading, Wget retains the protocol of the host URL if the link wasn't followed and an absolute link is to be added to the local file. """ if os.getenv('SSL_TESTS') is None: exit(SKIP_TEST) ############################## File Definitions ############################## index = """ Index Site Missing Missing2 """ converted = """ Index Site Missing Missing2 """ site = """ Site Subsite """ IndexPage = WgetFile("index.html", index) SubSite = WgetFile("sub.html", site) LocalIndexPage = WgetFile("index.html", converted) print(platform.system()) restrict = "unix" if platform.system() in ["Linux", "Darwin"] else "windows" WGET_OPTIONS = "-k -r -nH --reject-regex '.*\\.xhtml' --no-check-certificate" WGET_URLS = [["index.html"]] Files = [[IndexPage, SubSite]] Servers = [HTTPS] ExpectedReturnCode = 8 ExpectedDownloadedFiles = [LocalIndexPage, SubSite] ########################### Pre and Post Test Hooks ########################## pre_test = { "ServerFiles": Files, } test_options = { "WgetCommands": WGET_OPTIONS, "Urls": WGET_URLS } post_test = { "ExpectedFiles": ExpectedDownloadedFiles, "ExpectedRetcode": ExpectedReturnCode } err = HTTPTest( pre_hook=pre_test, test_params=test_options, post_hook=post_test, protocols=Servers, ).begin() exit(err)