Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 9 additions & 4 deletions paimon-python/pypaimon/tests/native_commit_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,13 @@
from pypaimon.write.table_write import StreamTableWrite


requires_native = pytest.mark.skipif(
not native_commit_available(), reason='pypaimon-rust runtime required')
def requires_native(test):
# Native commit needs the from-source paimon-rust runtime built in the Rust
# Plan CI job; the PyPI pypaimon-rust wheel used by the standard test job
# predates the commit bridge. Route these like the other native_plan tests.
test = pytest.mark.native_plan(test)
return pytest.mark.skipif(
not native_commit_available(), reason='pypaimon-rust runtime required')(test)


def _table(tmp_path, mode='append', backend='filesystem'):
Expand Down Expand Up @@ -223,7 +228,7 @@ def test_native_overwrite_normalizes_python_boolean_option(tmp_path, value):
commit.close()


@pytest.mark.parametrize('native', [False, True])
@pytest.mark.parametrize('native', [False, pytest.param(True, marks=pytest.mark.native_plan)])
@pytest.mark.parametrize('case', ['unpartitioned', 'static-empty', 'static-missing', 'dynamic-empty'])
def test_empty_overwrite_records_java_snapshot(tmp_path, native, case):
if native and not native_commit_available():
Expand Down Expand Up @@ -393,7 +398,7 @@ def test_snapshot_properties_select_python_before_native(tmp_path, properties, o
commit.close()


@pytest.mark.parametrize('warmup', [False, True])
@pytest.mark.parametrize('warmup', [False, pytest.param(True, marks=pytest.mark.native_plan)])
def test_callbacks_added_after_construction_select_python(tmp_path, warmup):
if warmup and not native_commit_available():
pytest.skip('native warmup requires the commit bindings')
Expand Down
Loading