-
Notifications
You must be signed in to change notification settings - Fork 10.4k
/
__init__.py
39 lines (30 loc) · 1.26 KB
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
"""
tests: this package contains all Scrapy unittests
see https://docs.scrapy.org/en/latest/contributing.html#running-tests
"""
import os
import socket
from pathlib import Path
# ignore system-wide proxies for tests
# which would send requests to a totally unsuspecting server
# (e.g. because urllib does not fully understand the proxy spec)
os.environ["http_proxy"] = ""
os.environ["https_proxy"] = ""
os.environ["ftp_proxy"] = ""
# Absolutize paths to coverage config and output file because tests that
# spawn subprocesses also changes current working directory.
_sourceroot = Path(__file__).resolve().parent.parent
if "COV_CORE_CONFIG" in os.environ:
os.environ["COVERAGE_FILE"] = str(_sourceroot / ".coverage")
os.environ["COV_CORE_CONFIG"] = str(_sourceroot / os.environ["COV_CORE_CONFIG"])
tests_datadir = str(Path(__file__).parent.resolve() / "sample_data")
# In some environments accessing a non-existing host doesn't raise an
# error. In such cases we're going to skip tests which rely on it.
try:
socket.getaddrinfo("non-existing-host", 80)
NON_EXISTING_RESOLVABLE = True
except socket.gaierror:
NON_EXISTING_RESOLVABLE = False
def get_testdata(*paths: str) -> bytes:
"""Return test data"""
return Path(tests_datadir, *paths).read_bytes()