Skip to content

Commit d645984

Browse files
committed
feat: Revert changes in tests
1 parent 2bf86e3 commit d645984

1 file changed

Lines changed: 16 additions & 73 deletions

File tree

tests/unit/test_http_clients.py

Lines changed: 16 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
from typing import Any
66
from unittest.mock import Mock
77

8-
import brotli
98
import impit
109
import pytest
1110

1211
from apify_client._statistics import ClientStatistics
1312
from apify_client.errors import InvalidResponseBodyError
1413
from apify_client.http_clients import HttpClient, HttpClientAsync, HttpResponse, ImpitHttpClient, ImpitHttpClientAsync
1514
from apify_client.http_clients._impit import _is_retryable_error
16-
from apify_client.http_compressors import BrotliHttpCompressor, GzipHttpCompressor
1715

1816

1917
class _ConcreteHttpClient(HttpClient):
@@ -273,7 +271,7 @@ def test_prepare_request_call_basic() -> None:
273271

274272

275273
def test_prepare_request_call_with_json() -> None:
276-
"""Default compressor is gzip — JSON body is compressed with gzip."""
274+
"""Test _prepare_request_call with JSON data."""
277275
client = _ConcreteHttpClient()
278276

279277
json_data = {'key': 'value', 'number': 42}
@@ -283,7 +281,6 @@ def test_prepare_request_call_with_json() -> None:
283281
assert headers['Content-Encoding'] == 'gzip'
284282
assert data is not None
285283
assert isinstance(data, bytes)
286-
assert gzip.decompress(data) == b'{"key": "value", "number": 42}'
287284

288285

289286
def test_prepare_request_call_with_empty_dict_json() -> None:
@@ -296,7 +293,9 @@ def test_prepare_request_call_with_empty_dict_json() -> None:
296293
assert headers['Content-Encoding'] == 'gzip'
297294
assert data is not None
298295
assert isinstance(data, bytes)
299-
assert gzip.decompress(data) == b'{}'
296+
# Verify the gzipped data contains the JSON
297+
decompressed = gzip.decompress(data)
298+
assert decompressed == b'{}'
300299

301300

302301
def test_prepare_request_call_with_empty_list_json() -> None:
@@ -309,7 +308,9 @@ def test_prepare_request_call_with_empty_list_json() -> None:
309308
assert headers['Content-Encoding'] == 'gzip'
310309
assert data is not None
311310
assert isinstance(data, bytes)
312-
assert gzip.decompress(data) == b'[]'
311+
# Verify the gzipped data contains the JSON
312+
decompressed = gzip.decompress(data)
313+
assert decompressed == b'[]'
313314

314315

315316
def test_prepare_request_call_with_zero_json() -> None:
@@ -322,7 +323,9 @@ def test_prepare_request_call_with_zero_json() -> None:
322323
assert headers['Content-Encoding'] == 'gzip'
323324
assert data is not None
324325
assert isinstance(data, bytes)
325-
assert gzip.decompress(data) == b'0'
326+
# Verify the gzipped data contains the JSON
327+
decompressed = gzip.decompress(data)
328+
assert decompressed == b'0'
326329

327330

328331
def test_prepare_request_call_with_false_json() -> None:
@@ -335,7 +338,9 @@ def test_prepare_request_call_with_false_json() -> None:
335338
assert headers['Content-Encoding'] == 'gzip'
336339
assert data is not None
337340
assert isinstance(data, bytes)
338-
assert gzip.decompress(data) == b'false'
341+
# Verify the gzipped data contains the JSON
342+
decompressed = gzip.decompress(data)
343+
assert decompressed == b'false'
339344

340345

341346
def test_prepare_request_call_with_empty_string_json() -> None:
@@ -348,7 +353,9 @@ def test_prepare_request_call_with_empty_string_json() -> None:
348353
assert headers['Content-Encoding'] == 'gzip'
349354
assert data is not None
350355
assert isinstance(data, bytes)
351-
assert gzip.decompress(data) == b'""'
356+
# Verify the gzipped data contains the JSON
357+
decompressed = gzip.decompress(data)
358+
assert decompressed == b'""'
352359

353360

354361
def test_prepare_request_call_with_string_data() -> None:
@@ -371,16 +378,6 @@ def test_prepare_request_call_with_bytes_data() -> None:
371378
assert isinstance(data, bytes)
372379

373380

374-
def test_prepare_request_call_with_bytearray_data() -> None:
375-
"""bytearray body is compressed correctly."""
376-
client = _ConcreteHttpClient()
377-
headers, _, data = client._prepare_request_call(data=bytearray(b'test bytearray'))
378-
379-
assert headers['Content-Encoding'] == 'gzip'
380-
assert data is not None
381-
assert gzip.decompress(data) == b'test bytearray'
382-
383-
384381
def test_prepare_request_call_json_and_data_error() -> None:
385382
"""Test _prepare_request_call raises error when both json and data are provided."""
386383
client = _ConcreteHttpClient()
@@ -455,57 +452,3 @@ def test_build_url_with_params_mixed() -> None:
455452
assert 'tags=a' in url
456453
assert 'tags=b' in url
457454
assert 'name=test' in url
458-
459-
460-
def test_prepare_request_call_brotli_compression() -> None:
461-
"""When a BrotliHttpCompressor is injected, request body uses brotli."""
462-
client = _ConcreteHttpClient(compressor=BrotliHttpCompressor())
463-
headers, _, data = client._prepare_request_call(json={'k': 'v'})
464-
465-
assert headers['Content-Encoding'] == 'br'
466-
assert data is not None
467-
assert brotli.decompress(data) == b'{"k": "v"}'
468-
469-
470-
def test_prepare_request_call_explicit_gzip() -> None:
471-
"""When a GzipHttpCompressor is injected, request body uses gzip."""
472-
client = _ConcreteHttpClient(compressor=GzipHttpCompressor())
473-
headers, _, data = client._prepare_request_call(json={'k': 'v'})
474-
475-
assert headers['Content-Encoding'] == 'gzip'
476-
assert data is not None
477-
assert gzip.decompress(data) == b'{"k": "v"}'
478-
479-
480-
def test_prepare_request_call_brotli_custom_quality() -> None:
481-
"""Custom quality is forwarded to the brotli compressor."""
482-
client = _ConcreteHttpClient(compressor=BrotliHttpCompressor(quality=1))
483-
headers, _, data = client._prepare_request_call(json={'k': 'v'})
484-
485-
assert headers['Content-Encoding'] == 'br'
486-
assert data is not None
487-
assert brotli.decompress(data) == b'{"k": "v"}'
488-
489-
490-
def test_prepare_request_call_gzip_custom_quality() -> None:
491-
"""Custom quality is forwarded to the gzip compressor."""
492-
client = _ConcreteHttpClient(compressor=GzipHttpCompressor(quality=1))
493-
headers, _, data = client._prepare_request_call(json={'k': 'v'})
494-
495-
assert headers['Content-Encoding'] == 'gzip'
496-
assert data is not None
497-
assert gzip.decompress(data) == b'{"k": "v"}'
498-
499-
500-
def test_default_compressor_is_gzip() -> None:
501-
"""HttpClientBase uses GzipHttpCompressor when no compressor is specified."""
502-
client = _ConcreteHttpClient()
503-
assert isinstance(client._compressor, GzipHttpCompressor)
504-
assert client._compressor.content_encoding == 'gzip'
505-
506-
507-
def test_custom_compressor_is_stored() -> None:
508-
"""An injected compressor is stored and used."""
509-
compressor = BrotliHttpCompressor(quality=9)
510-
client = _ConcreteHttpClient(compressor=compressor)
511-
assert client._compressor is compressor

0 commit comments

Comments
 (0)