def test_resolve_to_gdrive(self, mocker): file_name = "data.tar" original_url = f"http://downloads.pytorch.org/{file_name}" id_sentinel = "id-sentinel" redirected_url = f"https://drive.google.com/file/d/{id_sentinel}/view" sha256_sentinel = "sha256_sentinel" def preprocess_sentinel(path): return path original_resource = HttpResource( original_url, sha256=sha256_sentinel, preprocess=preprocess_sentinel, ) mocker.patch("torchvision.prototype.datasets.utils._resource._get_redirect_url", return_value=redirected_url) redirected_resource = original_resource.resolve() assert isinstance(redirected_resource, GDriveResource) assert redirected_resource.id == id_sentinel assert redirected_resource.file_name == file_name assert redirected_resource.sha256 == sha256_sentinel assert redirected_resource._preprocess is preprocess_sentinel
def test_resolve_to_http(self, mocker): file_name = "data.tar" original_url = f"http://downloads.pytorch.org/{file_name}" redirected_url = original_url.replace("http", "https") sha256_sentinel = "sha256_sentinel" def preprocess_sentinel(path): return path original_resource = HttpResource( original_url, sha256=sha256_sentinel, preprocess=preprocess_sentinel, ) mocker.patch("torchvision.prototype.datasets.utils._resource._get_redirect_url", return_value=redirected_url) redirected_resource = original_resource.resolve() assert isinstance(redirected_resource, HttpResource) assert redirected_resource.url == redirected_url assert redirected_resource.file_name == file_name assert redirected_resource.sha256 == sha256_sentinel assert redirected_resource._preprocess is preprocess_sentinel