def METHOD_NAME(dv_files, requests_mock):
    mock_response = {
        "data": {
            "latestVersion": {
                "files": [
                    {"dataFile": {"id": 1}, "label": "some-file.txt"},
                    {
                        "dataFile": {"id": 2},
                        "label": "some-other-file.txt",
                        "directoryLabel": "directory",
                    },
                    {
                        "dataFile": {"id": 3},
                        "label": "the-other-file.txt",
                        "directoryLabel": "directory/subdirectory",
                    },
                ]
            }
        }
    }
    spec = {"host": harvard_dv, "record": "doi:10.7910/DVN/6ZXAGT"}
    def mock_filecontent(req, context):
        parts = urlsplit(req.url)
        file_no = int(parts.path.split("/")[-1]) - 1
        return open(dv_files[file_no], "rb").read()
    requests_mock.get(
        "https://dataverse.harvard.edu/api/datasets/"
        ":persistentId?persistentId=doi:10.7910/DVN/6ZXAGT",
        json=mock_response,
    )
    requests_mock.get(
        re.compile("https://dataverse.harvard.edu/api/access/datafile"),
        content=mock_filecontent,
    )
    dv = Dataverse()
    with TemporaryDirectory() as d:
        output = []
        for l in dv.fetch(spec, d):
            output.append(l)
        unpacked_files = set(os.listdir(d))
        expected = {"directory", "some-file.txt"}
        assert expected == unpacked_files
        assert os.path.isfile(
            os.path.join(d, "directory", "subdirectory", "the-other-file.txt")
        )