Coverage for tests / test_tutorial / test_create_db_and_table / test_tutorial001.py: 100%

17 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-01-06 21:09 +0000

1from pathlib import Path 1jklmnopqr

2 

3import pytest 1jklmnopqr

4 

5from ...conftest import coverage_run, needs_py310 1jklmnopqr

6 

7 

8@pytest.mark.parametrize( 1jklmnopqr

9 "module_name", 

10 [ 

11 "tutorial001_py39", 

12 pytest.param("tutorial001_py310", marks=needs_py310), 

13 ], 

14) 

15def test_create_db_and_table(cov_tmp_path: Path, module_name: str): 1jklmnopqr

16 module = f"docs_src.tutorial.create_db_and_table.{module_name}" 1abcdefghi

17 result = coverage_run(module=module, cwd=cov_tmp_path) 1abcdefghi

18 assert "BEGIN" in result.stdout 1abcdefghi

19 assert 'PRAGMA main.table_info("hero")' in result.stdout 1abcdefghi

20 assert "CREATE TABLE hero (" in result.stdout 1abcdefghi

21 assert "id INTEGER NOT NULL," in result.stdout 1abcdefghi

22 assert "name VARCHAR NOT NULL," in result.stdout 1abcdefghi

23 assert "secret_name VARCHAR NOT NULL," in result.stdout 1abcdefghi

24 assert "age INTEGER," in result.stdout 1abcdefghi

25 assert "PRIMARY KEY (id)" in result.stdout 1abcdefghi

26 assert ")" in result.stdout 1abcdefghi

27 assert "COMMIT" in result.stdout 1abcdefghi