Skip to content

Commit ffd44fc

Browse files
committed
docs(cli[copy,delete,new,stop]): Add doctests to create_*_subparser functions
why: CLAUDE.md requires doctests on all functions; the 4 new CLI files had none. what: - Add doctest to create_copy_subparser (source/destination args) - Add doctest to create_delete_subparser (workspace_names, answer_yes) - Add doctest to create_new_subparser (workspace_name arg) - Add doctest to create_stop_subparser (session_name arg)
1 parent f7dc4f9 commit ffd44fc

4 files changed

Lines changed: 42 additions & 4 deletions

File tree

src/tmuxp/cli/copy.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,16 @@
4343
def create_copy_subparser(
4444
parser: argparse.ArgumentParser,
4545
) -> argparse.ArgumentParser:
46-
"""Augment :class:`argparse.ArgumentParser` with ``copy`` subcommand."""
46+
"""Augment :class:`argparse.ArgumentParser` with ``copy`` subcommand.
47+
48+
Examples
49+
--------
50+
>>> import argparse
51+
>>> parser = create_copy_subparser(argparse.ArgumentParser())
52+
>>> args = parser.parse_args(["src", "dst"])
53+
>>> args.source, args.destination
54+
('src', 'dst')
55+
"""
4756
parser.add_argument(
4857
dest="source",
4958
metavar="source",

src/tmuxp/cli/delete.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,18 @@
4242
def create_delete_subparser(
4343
parser: argparse.ArgumentParser,
4444
) -> argparse.ArgumentParser:
45-
"""Augment :class:`argparse.ArgumentParser` with ``delete`` subcommand."""
45+
"""Augment :class:`argparse.ArgumentParser` with ``delete`` subcommand.
46+
47+
Examples
48+
--------
49+
>>> import argparse
50+
>>> parser = create_delete_subparser(argparse.ArgumentParser())
51+
>>> args = parser.parse_args(["proj1", "proj2", "-y"])
52+
>>> args.workspace_names
53+
['proj1', 'proj2']
54+
>>> args.answer_yes
55+
True
56+
"""
4657
parser.add_argument(
4758
dest="workspace_names",
4859
metavar="workspace-name",

src/tmuxp/cli/new.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,16 @@
5050
def create_new_subparser(
5151
parser: argparse.ArgumentParser,
5252
) -> argparse.ArgumentParser:
53-
"""Augment :class:`argparse.ArgumentParser` with ``new`` subcommand."""
53+
"""Augment :class:`argparse.ArgumentParser` with ``new`` subcommand.
54+
55+
Examples
56+
--------
57+
>>> import argparse
58+
>>> parser = create_new_subparser(argparse.ArgumentParser())
59+
>>> args = parser.parse_args(["myproject"])
60+
>>> args.workspace_name
61+
'myproject'
62+
"""
5463
parser.add_argument(
5564
dest="workspace_name",
5665
metavar="workspace-name",

src/tmuxp/cli/stop.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,16 @@ class CLIStopNamespace(argparse.Namespace):
4747
def create_stop_subparser(
4848
parser: argparse.ArgumentParser,
4949
) -> argparse.ArgumentParser:
50-
"""Augment :class:`argparse.ArgumentParser` with ``stop`` subcommand."""
50+
"""Augment :class:`argparse.ArgumentParser` with ``stop`` subcommand.
51+
52+
Examples
53+
--------
54+
>>> import argparse
55+
>>> parser = create_stop_subparser(argparse.ArgumentParser())
56+
>>> args = parser.parse_args(["mysession"])
57+
>>> args.session_name
58+
'mysession'
59+
"""
5160
parser.add_argument(
5261
dest="session_name",
5362
metavar="session-name",

0 commit comments

Comments
 (0)