Skip to content

Commit 257000e

Browse files
committed
Relax version check to support dev builds
1 parent feb970a commit 257000e

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

tests/integration/scipp-analysis/dream/test_package_import.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"""Tests for verifying package installation and version consistency.
44
55
These tests check that easydiffraction and essdiffraction packages are
6-
installed and match the latest PyPI release (MAJOR.MINOR.PATCH only).
6+
installed and are not older than the latest PyPI release.
77
"""
88

99
import importlib.metadata
@@ -47,11 +47,14 @@ def get_base_version(
4747

4848

4949
@pytest.mark.parametrize('package_name', PACKAGE_NAMES)
50-
def test_package_import__latest(
50+
def test_package_import(
5151
package_name: str,
5252
) -> None:
53-
"""Verify installed package matches PyPI latest version
54-
(MAJOR.MINOR.PATCH).
53+
"""Verify installed package is not older than PyPI latest version.
54+
55+
Uses >= comparison to support both:
56+
- Real releases where installed == latest
57+
- Dev builds where installed (e.g., 999.0.0) > latest
5558
"""
5659
installed_version = get_installed_version(package_name)
5760
latest_version = get_latest_version(package_name)
@@ -60,9 +63,9 @@ def test_package_import__latest(
6063
assert latest_version is not None, f'Could not fetch latest version for {package_name}.'
6164

6265
# Compare only MAJOR.MINOR.PATCH, ignoring local version identifiers
63-
installed_base = get_base_version(installed_version)
64-
latest_base = get_base_version(latest_version)
66+
installed_base = Version(get_base_version(installed_version))
67+
latest_base = Version(get_base_version(latest_version))
6568

66-
assert installed_base == latest_base, (
69+
assert installed_base >= latest_base, (
6770
f'Package {package_name} is outdated: Installed={installed_base}, Latest={latest_base}'
6871
)

0 commit comments

Comments
 (0)