





# this script reports modified .py files under the desired list of top-level sub-dirs passed as a list of arguments, e.g.:
#   python ./utils/get_modified_files.py utils src tests examples
#
# it uses git to find the forking point and which files were modified - i.e. files not under git won't be considered
# since the output of this script is fed into Makefile commands it doesn't print a newline after the results

import re
import subprocess
import sys


UpperCAmelCase__  :     Union[str, Any]   			=subprocess.check_output('''git merge-base main HEAD'''.split()).decode('''utf-8''')
UpperCAmelCase__  :     List[str]   			=(
    subprocess.check_output(F"git diff --diff-filter=d --name-only {fork_point_sha}".split()).decode('''utf-8''').split()
)

UpperCAmelCase__  :     Tuple   			='''|'''.join(sys.argv[1:])
UpperCAmelCase__  :     List[str]   			=re.compile(rF"^({joined_dirs}).*?\.py$")

UpperCAmelCase__  :     Any   			=[x for x in modified_files if regex.match(x)]
print(''' '''.join(relevant_modified_files), end='''''')












import pytest
import requests

from datasets.utils.file_utils import http_head

from .utils import OfflineSimulationMode, RequestWouldHangIndefinitelyError, offline





@pytest.mark.integration
def        _lowercase   (  )  ->					str:
				with offline(OfflineSimulationMode.CONNECTION_TIMES_OUT			):
								with pytest.raises(_UpperCAmelCase			):
												requests.request("""GET"""     , """https://huggingface.co"""			)
								with pytest.raises(requests.exceptions.ConnectTimeout			):
												requests.request("""GET"""     , """https://huggingface.co"""     , timeout=1.0			)





@pytest.mark.integration
def        _lowercase   (  )  ->					Union[str, Any]:
				with offline(OfflineSimulationMode.CONNECTION_FAILS			):
								with pytest.raises(requests.exceptions.ConnectionError			):
												requests.request("""GET"""     , """https://huggingface.co"""			)





def        _lowercase   (  )  ->					int:
				with offline(OfflineSimulationMode.HF_DATASETS_OFFLINE_SET_TO_1			):
								with pytest.raises(_UpperCAmelCase			):
												http_head("""https://huggingface.co"""			)





