Skip to content

Commit 5cb0db5

Browse files
committed
fix: replace Python 3.10+ union syntax in integration tests
Converted 'str | bytes' and 'str | None' to Union types for compatibility across all Python versions. Added explicit Union imports to all integration test files to resolve runtime syntax errors in Python 3.10+ environments. This should resolve the integration test failures in CI.
1 parent d41429f commit 5cb0db5

File tree

4 files changed

+15
-10
lines changed

4 files changed

+15
-10
lines changed

tests/integration/test_direct_api_integration.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,17 @@
44
test all Direct API methods against the live Nutrient DWS API.
55
"""
66

7+
from typing import Union
8+
79
import pytest
810

911
from nutrient_dws import NutrientClient
1012

1113
try:
1214
from . import integration_config # type: ignore[attr-defined]
1315

14-
API_KEY: str | None = integration_config.API_KEY
15-
BASE_URL: str | None = getattr(integration_config, "BASE_URL", None)
16+
API_KEY: Union[str, None] = integration_config.API_KEY
17+
BASE_URL: Union[str, None] = getattr(integration_config, "BASE_URL", None)
1618
TIMEOUT: int = getattr(integration_config, "TIMEOUT", 60)
1719
except ImportError:
1820
API_KEY = None

tests/integration/test_live_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"""
55

66
from __future__ import annotations
7+
from typing import Union
78

89
import pytest
910

@@ -12,8 +13,8 @@
1213
try:
1314
from . import integration_config # type: ignore[attr-defined]
1415

15-
API_KEY: str | None = integration_config.API_KEY
16-
BASE_URL: str | None = getattr(integration_config, "BASE_URL", None)
16+
API_KEY: Union[str, None] = integration_config.API_KEY
17+
BASE_URL: Union[str, None] = getattr(integration_config, "BASE_URL", None)
1718
TIMEOUT: int = getattr(integration_config, "TIMEOUT", 60)
1819
except ImportError:
1920
API_KEY = None

tests/integration/test_new_tools_integration.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"""
66

77
from pathlib import Path
8+
from typing import Union
89

910
import pytest
1011

@@ -13,22 +14,22 @@
1314
try:
1415
from . import integration_config # type: ignore[attr-defined]
1516

16-
API_KEY: str | None = integration_config.API_KEY
17-
BASE_URL: str | None = getattr(integration_config, "BASE_URL", None)
17+
API_KEY: Union[str, None] = integration_config.API_KEY
18+
BASE_URL: Union[str, None] = getattr(integration_config, "BASE_URL", None)
1819
TIMEOUT: int = getattr(integration_config, "TIMEOUT", 60)
1920
except ImportError:
2021
API_KEY = None
2122
BASE_URL = None
2223
TIMEOUT = 60
2324

2425

25-
def assert_is_pdf(file_path_or_bytes: str | bytes) -> None:
26+
def assert_is_pdf(file_path_or_bytes: Union[str, bytes]) -> None:
2627
"""Assert that a file or bytes is a valid PDF.
2728
2829
Args:
2930
file_path_or_bytes: Path to file or bytes content to check.
3031
"""
31-
if isinstance(file_path_or_bytes, str | bytes):
32+
if isinstance(file_path_or_bytes, (str, bytes)):
3233
if isinstance(file_path_or_bytes, str):
3334
with open(file_path_or_bytes, "rb") as f:
3435
content = f.read(8)

tests/integration/test_watermark_image_file_integration.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import os
44
from pathlib import Path
5+
from typing import Union
56

67
import pytest
78

@@ -10,8 +11,8 @@
1011
try:
1112
from . import integration_config # type: ignore[attr-defined]
1213

13-
API_KEY: str | None = integration_config.API_KEY
14-
BASE_URL: str | None = getattr(integration_config, "BASE_URL", None)
14+
API_KEY: Union[str, None] = integration_config.API_KEY
15+
BASE_URL: Union[str, None] = getattr(integration_config, "BASE_URL", None)
1516
TIMEOUT: int = getattr(integration_config, "TIMEOUT", 60)
1617
except ImportError:
1718
API_KEY = None

0 commit comments

Comments
 (0)