Skip to content

Commit 2fdeb48

Browse files
author
Cursor
committed
Add cloudscraper test to test harness
1 parent 109a8fe commit 2fdeb48

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

test_proxy_headers.py

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -401,6 +401,61 @@ def test(self, config: TestConfig) -> TestResult:
401401
)
402402

403403

404+
# =============================================================================
405+
# cloudscraper Test
406+
# =============================================================================
407+
408+
class CloudscraperTest(ModuleTest):
409+
"""Test for cloudscraper extension."""
410+
411+
name = "cloudscraper"
412+
413+
def test(self, config: TestConfig) -> TestResult:
414+
try:
415+
from python_proxy_headers.cloudscraper_proxy import create_scraper
416+
417+
# Create scraper with optional proxy headers to send
418+
scraper = create_scraper(proxy_headers=config.proxy_headers_to_send or None)
419+
scraper.proxies = {
420+
'http': config.proxy_url,
421+
'https': config.proxy_url
422+
}
423+
424+
# Make request
425+
response = scraper.get(config.test_url)
426+
427+
# Check for proxy header in response
428+
header_value = self._check_header(dict(response.headers), config.proxy_header)
429+
430+
if header_value:
431+
return TestResult(
432+
module_name=self.name,
433+
success=True,
434+
header_value=header_value,
435+
response_status=response.status_code
436+
)
437+
else:
438+
return TestResult(
439+
module_name=self.name,
440+
success=False,
441+
error=f"Header '{config.proxy_header}' not found in response",
442+
response_status=response.status_code
443+
)
444+
445+
except ImportError as e:
446+
return TestResult(
447+
module_name=self.name,
448+
success=False,
449+
error=f"Import error: {e}"
450+
)
451+
except Exception as e:
452+
return TestResult(
453+
module_name=self.name,
454+
success=False,
455+
error=f"{type(e).__name__}: {e}"
456+
)
457+
458+
404459
# =============================================================================
405460
# Test Registry
406461
# =============================================================================
@@ -411,6 +466,7 @@ def test(self, config: TestConfig) -> TestResult:
411466
'requests': RequestsTest,
412467
'aiohttp': AiohttpTest,
413468
'httpx': HttpxTest,
469+
'cloudscraper': CloudscraperTest,
414470
}
415471

416472

0 commit comments

Comments
 (0)