mirror of
https://github.com/simonw/sqlite-utils.git
synced 2026-07-23 09:24:31 +02:00
sqlite-utils create-table docs, plus doc unit test
Refs #27. Closes #108
This commit is contained in:
parent
36d256b047
commit
99a7906fd9
2 changed files with 36 additions and 0 deletions
14
docs/cli.rst
14
docs/cli.rst
|
|
@ -334,6 +334,20 @@ The command will fail if you reference columns that do not exist on the table. T
|
|||
.. note::
|
||||
``upsert`` in sqlite-utils 1.x worked like ``insert ... --replace`` does in 2.x. See `issue #66 <https://github.com/simonw/sqlite-utils/issues/66>`__ for details of this change.
|
||||
|
||||
|
||||
.. _cli_create_table:
|
||||
|
||||
Creating tables
|
||||
===============
|
||||
|
||||
Most of the time creating tables by inserting example data is the quickest approach. If you need to create an empty table in advance of inserting data you can do so using the ``create-table`` command::
|
||||
|
||||
$ sqlite-utils create-table mydb.db mytable id integer name text --pk=id
|
||||
|
||||
This will create a table called ``mytable`` with two columns - an integer ``id`` column and a text ``name`` column. It will set the ``id`` column to be the primary key.
|
||||
|
||||
You can pass as many column-name column-type pairs as you like. Valid types are ``integer``, ``text``, ``float`` and ``blob``.
|
||||
|
||||
.. _cli_add_column:
|
||||
|
||||
Adding columns
|
||||
|
|
|
|||
22
tests/test_docs.py
Normal file
22
tests/test_docs.py
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
from sqlite_utils import cli
|
||||
from pathlib import Path
|
||||
import pytest
|
||||
import re
|
||||
|
||||
docs_path = Path(__file__).parent.parent / "docs"
|
||||
commands_re = re.compile(r"(?:\$ | )sqlite-utils (\S+) ")
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def documented_commands():
|
||||
rst = (docs_path / "cli.rst").read_text()
|
||||
return {
|
||||
command
|
||||
for command in commands_re.findall(rst)
|
||||
if "." not in command and ":" not in command
|
||||
}
|
||||
|
||||
|
||||
@pytest.mark.parametrize("command", cli.cli.commands.keys())
|
||||
def test_plugin_hooks_are_documented(documented_commands, command):
|
||||
assert command in documented_commands
|
||||
Loading…
Add table
Add a link
Reference in a new issue