sqlite-utils/tests/test_sniff.py
Claude b49af65a6d
Fix PytestRemovedIn10Warning in test_sniff
parametrize received a generator from Path.glob(), which pytest 10
will reject. sorted() materializes the list and makes the parameter
order deterministic as a bonus.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UnLnhsH25Nnv7LHhekUfPd
2026-07-04 23:20:31 +00:00

25 lines
917 B
Python

from sqlite_utils import cli, Database
from click.testing import CliRunner
import pathlib
import pytest
sniff_dir = pathlib.Path(__file__).parent / "sniff"
@pytest.mark.parametrize("filepath", sorted(sniff_dir.glob("example*")))
def test_sniff(tmpdir, filepath):
db_path = str(tmpdir / "test.db")
runner = CliRunner()
result = runner.invoke(
cli.cli,
["insert", db_path, "creatures", str(filepath), "--sniff", "--no-detect-types"],
catch_exceptions=False,
)
assert result.exit_code == 0, result.stdout
db = Database(db_path)
assert list(db["creatures"].rows) == [
{"id": "1", "species": "dog", "name": "Cleo", "age": "5"},
{"id": "2", "species": "dog", "name": "Pancakes", "age": "4"},
{"id": "3", "species": "cat", "name": "Mozie", "age": "8"},
{"id": "4", "species": "spider", "name": "Daisy, the tarantula", "age": "6"},
]