mirror of
https://github.com/simonw/sqlite-utils.git
synced 2026-07-23 09:24:31 +02:00
table.extract() now works with rowid tables, refs #42
This commit is contained in:
parent
71782311ce
commit
2db6c5b2d5
3 changed files with 30 additions and 5 deletions
|
|
@ -61,9 +61,9 @@ def test_extract_multiple_columns_with_rename(fresh_db):
|
|||
pk="id",
|
||||
)
|
||||
|
||||
fresh_db["tree"].extract(["common_name", "latin_name"], rename={
|
||||
"common_name": "name"
|
||||
})
|
||||
fresh_db["tree"].extract(
|
||||
["common_name", "latin_name"], rename={"common_name": "name"}
|
||||
)
|
||||
assert fresh_db["tree"].schema == (
|
||||
'CREATE TABLE "tree" (\n'
|
||||
" [id] INTEGER PRIMARY KEY,\n"
|
||||
|
|
@ -105,3 +105,22 @@ def test_extract_invalid_columns(fresh_db):
|
|||
)
|
||||
with pytest.raises(InvalidColumns):
|
||||
fresh_db["tree"].extract(["bad_column"])
|
||||
|
||||
|
||||
def test_extract_rowid_table(fresh_db):
|
||||
fresh_db["tree"].insert(
|
||||
{
|
||||
"name": "Tree 1",
|
||||
"common_name": "Palm",
|
||||
"latin_name": "Arecaceae",
|
||||
}
|
||||
)
|
||||
fresh_db["tree"].extract(["common_name", "latin_name"])
|
||||
assert fresh_db["tree"].schema == (
|
||||
'CREATE TABLE "tree" (\n'
|
||||
" [rowid] INTEGER PRIMARY KEY,\n"
|
||||
" [name] TEXT,\n"
|
||||
" [common_name_latin_name_id] INTEGER,\n"
|
||||
" FOREIGN KEY(common_name_latin_name_id) REFERENCES common_name_latin_name(id)\n"
|
||||
")"
|
||||
)
|
||||
|
|
|
|||
|
|
@ -26,7 +26,9 @@ def test_rows_where(where, where_args, expected_ids, fresh_db):
|
|||
],
|
||||
pk="id",
|
||||
)
|
||||
assert expected_ids == {r["id"] for r in table.rows_where(where, where_args, select="id")}
|
||||
assert expected_ids == {
|
||||
r["id"] for r in table.rows_where(where, where_args, select="id")
|
||||
}
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue