sqlite-utils/tests/test_create_view.py
Simon Willison 69a1c0d960
Fixes for Ruff>=0.16.0 (#814)
* Automated upgrades by Ruff

    uvx --with 'ruff>=0.16.0' ruff check . --fix --unsafe-fixes

* Fix remaining Ruff errors with GPT-5.6 Sol high

https://gist.github.com/simonw/6da7906a9fea6e90da131c21a9055199

* Fix flake E501 long lines
* New Protocol for migrations to make ty happy
2026-07-25 14:53:12 -07:00

44 lines
1.4 KiB
Python

import pytest
from sqlite_utils.utils import OperationalError
def test_create_view(fresh_db):
fresh_db.create_view("bar", "select 1 + 1")
rows = fresh_db.execute("select * from bar").fetchall()
assert [(2,)] == rows
def test_create_view_error(fresh_db):
fresh_db.create_view("bar", "select 1 + 1")
with pytest.raises(OperationalError):
fresh_db.create_view("bar", "select 1 + 2")
def test_create_view_only_arrow_one_param(fresh_db):
with pytest.raises(ValueError):
fresh_db.create_view("bar", "select 1 + 2", ignore=True, replace=True)
def test_create_view_ignore(fresh_db):
fresh_db.create_view("bar", "select 1 + 1").create_view(
"bar", "select 1 + 2", ignore=True
)
rows = fresh_db.execute("select * from bar").fetchall()
assert [(2,)] == rows
def test_create_view_replace(fresh_db):
fresh_db.create_view("bar", "select 1 + 1").create_view(
"bar", "select 1 + 2", replace=True
)
rows = fresh_db.execute("select * from bar").fetchall()
assert [(3,)] == rows
def test_create_view_replace_with_same_does_nothing(fresh_db):
fresh_db.create_view("bar", "select 1 + 1")
initial_version = fresh_db.execute("PRAGMA schema_version").fetchone()[0]
fresh_db.create_view("bar", "select 1 + 1", replace=True)
after_version = fresh_db.execute("PRAGMA schema_version").fetchone()[0]
assert after_version == initial_version