fast-dev-cli 0.8.1__tar.gz → 0.8.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/PKG-INFO +1 -1
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/fast_dev_cli/cli.py +21 -7
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/pyproject.toml +1 -1
- fast_dev_cli-0.8.2/tests/test_runserver.py +82 -0
- fast_dev_cli-0.8.1/tests/test_runserver.py +0 -46
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/LICENSE +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/README.md +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/fast_dev_cli/__init__.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/fast_dev_cli/__main__.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/fast_dev_cli/py.typed +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/pdm_build.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/scripts/check.sh +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/scripts/format.sh +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/scripts/test.sh +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/__init__.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/conftest.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_bump.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_fast_test.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_functions.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_import.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_lint.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_sync.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_tag.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_upgrade.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_upload.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/test_version.py +0 -0
- {fast_dev_cli-0.8.1 → fast_dev_cli-0.8.2}/tests/utils.py +0 -0
|
@@ -27,7 +27,7 @@ if TYPE_CHECKING: # pragma: no cover
|
|
|
27
27
|
from typer.models import OptionInfo
|
|
28
28
|
|
|
29
29
|
|
|
30
|
-
__version__ = "0.8.
|
|
30
|
+
__version__ = "0.8.2"
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
def parse_files(args: list[str] | tuple[str, ...]) -> list[str]:
|
|
@@ -666,10 +666,23 @@ def upload(
|
|
|
666
666
|
|
|
667
667
|
|
|
668
668
|
def dev(
|
|
669
|
-
port: int | None | "OptionInfo",
|
|
669
|
+
port: int | None | "OptionInfo",
|
|
670
|
+
host: str | None | "OptionInfo",
|
|
671
|
+
file: Optional[str] = None,
|
|
672
|
+
dry=False,
|
|
670
673
|
) -> None:
|
|
671
674
|
cmd = "fastapi dev"
|
|
672
|
-
|
|
675
|
+
no_port_yet = True
|
|
676
|
+
if file is not None:
|
|
677
|
+
try:
|
|
678
|
+
port = int(file) # type:ignore[arg-type]
|
|
679
|
+
except ValueError:
|
|
680
|
+
cmd += f" {file}"
|
|
681
|
+
else:
|
|
682
|
+
if port != 8000:
|
|
683
|
+
cmd += f" --{port=}"
|
|
684
|
+
no_port_yet = False
|
|
685
|
+
if no_port_yet and (port := getattr(port, "default", port)) and str(port) != "8000":
|
|
673
686
|
cmd += f" --port={port}"
|
|
674
687
|
if (host := getattr(host, "default", host)) and host not in (
|
|
675
688
|
"localhost",
|
|
@@ -681,15 +694,16 @@ def dev(
|
|
|
681
694
|
|
|
682
695
|
@cli.command(name="dev")
|
|
683
696
|
def runserver(
|
|
684
|
-
|
|
697
|
+
file_or_port: Annotated[Optional[str], typer.Argument()] = None,
|
|
685
698
|
port: Optional[int] = Option(None, "-p", "--port"),
|
|
686
699
|
host: Optional[str] = Option(None, "-h", "--host"),
|
|
687
700
|
dry: bool = Option(False, "--dry", help="Only print, not really run shell command"),
|
|
688
701
|
) -> None:
|
|
689
702
|
"""Start a fastapi server(only for fastapi>=0.111.0)"""
|
|
690
|
-
if
|
|
691
|
-
port =
|
|
692
|
-
|
|
703
|
+
if file_or_port:
|
|
704
|
+
dev(port, host, file=file_or_port, dry=dry)
|
|
705
|
+
else:
|
|
706
|
+
dev(port, host, dry=dry)
|
|
693
707
|
|
|
694
708
|
|
|
695
709
|
if __name__ == "__main__": # pragma: no cover
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
from fast_dev_cli.cli import dev, run_and_echo, runserver
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def test_runserver(capsys):
|
|
5
|
+
runserver(dry=True)
|
|
6
|
+
out = capsys.readouterr().out.strip()
|
|
7
|
+
assert "fastapi dev" == out.replace("--> ", "")
|
|
8
|
+
runserver(port=8000, dry=True)
|
|
9
|
+
out = capsys.readouterr().out.strip()
|
|
10
|
+
assert "fastapi dev" == out.replace("--> ", "")
|
|
11
|
+
runserver(port=9000, dry=True)
|
|
12
|
+
out = capsys.readouterr().out.strip()
|
|
13
|
+
assert "fastapi dev --port=9000" == out.replace("--> ", "")
|
|
14
|
+
runserver(host="0.0.0.0", dry=True)
|
|
15
|
+
out = capsys.readouterr().out.strip()
|
|
16
|
+
assert "fastapi dev --host=0.0.0.0" == out.replace("--> ", "")
|
|
17
|
+
runserver(port=9000, host="0.0.0.0", dry=True)
|
|
18
|
+
out = capsys.readouterr().out.strip()
|
|
19
|
+
assert "fastapi dev --port=9000 --host=0.0.0.0" == out.replace("--> ", "")
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_dev(capsys):
|
|
23
|
+
dev(None, None, dry=True)
|
|
24
|
+
out = capsys.readouterr().out.strip()
|
|
25
|
+
assert "fastapi dev" == out.replace("--> ", "")
|
|
26
|
+
dev(port=8000, host="", dry=True)
|
|
27
|
+
out = capsys.readouterr().out.strip()
|
|
28
|
+
assert "fastapi dev" == out.replace("--> ", "")
|
|
29
|
+
dev(port=9000, host=None, dry=True)
|
|
30
|
+
out = capsys.readouterr().out.strip()
|
|
31
|
+
assert "fastapi dev --port=9000" == out.replace("--> ", "")
|
|
32
|
+
dev(8000, host="0.0.0.0", dry=True)
|
|
33
|
+
out = capsys.readouterr().out.strip()
|
|
34
|
+
assert "fastapi dev --host=0.0.0.0" == out.replace("--> ", "")
|
|
35
|
+
dev(port=9000, host="0.0.0.0", dry=True)
|
|
36
|
+
out = capsys.readouterr().out.strip()
|
|
37
|
+
assert "fastapi dev --port=9000 --host=0.0.0.0" == out.replace("--> ", "")
|
|
38
|
+
dev(8001, host="0.0.0.0", dry=True)
|
|
39
|
+
out = capsys.readouterr().out.strip()
|
|
40
|
+
assert "fastapi dev --port=8001 --host=0.0.0.0" == out.replace("--> ", "")
|
|
41
|
+
dev(None, file="8001", host="0.0.0.0", dry=True)
|
|
42
|
+
out = capsys.readouterr().out.strip()
|
|
43
|
+
assert "fastapi dev --port=8001 --host=0.0.0.0" == out.replace("--> ", "")
|
|
44
|
+
dev(None, file="main.py", host="0.0.0.0", dry=True)
|
|
45
|
+
out = capsys.readouterr().out.strip()
|
|
46
|
+
assert "fastapi dev main.py --host=0.0.0.0" == out.replace("--> ", "")
|
|
47
|
+
dev(8001, file="main.py", host="0.0.0.0", dry=True)
|
|
48
|
+
out = capsys.readouterr().out.strip()
|
|
49
|
+
assert "fastapi dev main.py --port=8001 --host=0.0.0.0" == out.replace("--> ", "")
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def test_fast_dev(tmp_path):
|
|
53
|
+
out = tmp_path / "a.txt"
|
|
54
|
+
run_and_echo(f"fast dev 9000 --dry > {out}", verbose=False)
|
|
55
|
+
assert "fastapi dev --port=9000" in out.read_text()
|
|
56
|
+
run_and_echo(f"fast dev main.py --dry > {out}", verbose=False)
|
|
57
|
+
assert "fastapi dev main.py" in out.read_text()
|
|
58
|
+
run_and_echo(f"fast dev main.py --port=9000 --dry > {out}", verbose=False)
|
|
59
|
+
assert "fastapi dev main.py --port=9000" in out.read_text()
|
|
60
|
+
run_and_echo(
|
|
61
|
+
f"fast dev main.py --port=9000 --host=0.0.0.0 --dry > {out}", verbose=False
|
|
62
|
+
)
|
|
63
|
+
assert "fastapi dev main.py --port=9000 --host=0.0.0.0" in out.read_text()
|
|
64
|
+
run_and_echo(f"fast dev 9000 --host=0.0.0.0 --dry > {out}", verbose=False)
|
|
65
|
+
assert "fastapi dev --port=9000 --host=0.0.0.0" in out.read_text()
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def test_run_by_module(tmp_path):
|
|
69
|
+
out = tmp_path / "b.txt"
|
|
70
|
+
fast = "python -m fast_dev_cli"
|
|
71
|
+
run_and_echo(f"{fast} dev 9000 --dry > {out}", verbose=False)
|
|
72
|
+
assert "fastapi dev --port=9000" in out.read_text()
|
|
73
|
+
run_and_echo(f"{fast} dev main.py --dry > {out}", verbose=False)
|
|
74
|
+
assert "fastapi dev main.py" in out.read_text()
|
|
75
|
+
run_and_echo(f"{fast} dev main.py --port=9000 --dry > {out}", verbose=False)
|
|
76
|
+
assert "fastapi dev main.py --port=9000" in out.read_text()
|
|
77
|
+
run_and_echo(
|
|
78
|
+
f"{fast} dev main.py --port=9000 --host=0.0.0.0 --dry > {out}", verbose=False
|
|
79
|
+
)
|
|
80
|
+
assert "fastapi dev main.py --port=9000 --host=0.0.0.0" in out.read_text()
|
|
81
|
+
run_and_echo(f"{fast} dev 9000 --host=0.0.0.0 --dry > {out}", verbose=False)
|
|
82
|
+
assert "fastapi dev --port=9000 --host=0.0.0.0" in out.read_text()
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
from fast_dev_cli.cli import dev, run_and_echo, runserver
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
def test_runserver(capsys):
|
|
5
|
-
runserver(dry=True)
|
|
6
|
-
out = capsys.readouterr().out.strip()
|
|
7
|
-
assert "fastapi dev" == out.replace("--> ", "")
|
|
8
|
-
runserver(port=8000, dry=True)
|
|
9
|
-
out = capsys.readouterr().out.strip()
|
|
10
|
-
assert "fastapi dev" == out.replace("--> ", "")
|
|
11
|
-
runserver(port=9000, dry=True)
|
|
12
|
-
out = capsys.readouterr().out.strip()
|
|
13
|
-
assert "fastapi dev --port=9000" == out.replace("--> ", "")
|
|
14
|
-
runserver(host="0.0.0.0", dry=True)
|
|
15
|
-
out = capsys.readouterr().out.strip()
|
|
16
|
-
assert "fastapi dev --host=0.0.0.0" == out.replace("--> ", "")
|
|
17
|
-
runserver(port=9000, host="0.0.0.0", dry=True)
|
|
18
|
-
out = capsys.readouterr().out.strip()
|
|
19
|
-
assert "fastapi dev --port=9000 --host=0.0.0.0" == out.replace("--> ", "")
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
def test_dev(capsys):
|
|
23
|
-
dev(None, None, dry=True)
|
|
24
|
-
out = capsys.readouterr().out.strip()
|
|
25
|
-
assert "fastapi dev" == out.replace("--> ", "")
|
|
26
|
-
dev(port=8000, host="", dry=True)
|
|
27
|
-
out = capsys.readouterr().out.strip()
|
|
28
|
-
assert "fastapi dev" == out.replace("--> ", "")
|
|
29
|
-
dev(port=9000, host=None, dry=True)
|
|
30
|
-
out = capsys.readouterr().out.strip()
|
|
31
|
-
assert "fastapi dev --port=9000" == out.replace("--> ", "")
|
|
32
|
-
dev(8000, host="0.0.0.0", dry=True)
|
|
33
|
-
out = capsys.readouterr().out.strip()
|
|
34
|
-
assert "fastapi dev --host=0.0.0.0" == out.replace("--> ", "")
|
|
35
|
-
dev(port=9000, host="0.0.0.0", dry=True)
|
|
36
|
-
out = capsys.readouterr().out.strip()
|
|
37
|
-
assert "fastapi dev --port=9000 --host=0.0.0.0" == out.replace("--> ", "")
|
|
38
|
-
dev(8001, host="0.0.0.0", dry=True)
|
|
39
|
-
out = capsys.readouterr().out.strip()
|
|
40
|
-
assert "fastapi dev --port=8001 --host=0.0.0.0" == out.replace("--> ", "")
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
def test_fast_dev(tmp_path):
|
|
44
|
-
out = tmp_path / "a.txt"
|
|
45
|
-
run_and_echo(f"fast dev 9000 --dry > {out}", verbose=False)
|
|
46
|
-
assert "fastapi dev --port=9000" in out.read_text()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|