Initial commit
This commit is contained in:
39
{{cookiecutter.project_slug}}/tasks.py
Normal file
39
{{cookiecutter.project_slug}}/tasks.py
Normal file
@@ -0,0 +1,39 @@
|
||||
# type: ignore
|
||||
from invoke import task
|
||||
|
||||
|
||||
@task
|
||||
def clean(ctx):
|
||||
"""
|
||||
Remove all files and directories that are not under version control to ensure a pristine working environment.
|
||||
Use caution as this operation cannot be undone and might remove untracked files.
|
||||
|
||||
"""
|
||||
|
||||
ctx.run("git clean -nfdx")
|
||||
|
||||
response = (
|
||||
input("Are you sure you want to remove all untracked files? (y/n) [n]: ")
|
||||
.strip()
|
||||
.lower()
|
||||
)
|
||||
if response == "y":
|
||||
ctx.run("git clean -fdx")
|
||||
|
||||
|
||||
@task
|
||||
def lint(ctx):
|
||||
"""
|
||||
Perform static analysis on the source code to check for syntax errors and enforce style consistency.
|
||||
"""
|
||||
ctx.run("ruff check src", pty=True)
|
||||
ctx.run("ruff format --check src", pty=True)
|
||||
ctx.run("mypy src", pty=True)
|
||||
|
||||
|
||||
@task
|
||||
def test(ctx):
|
||||
"""
|
||||
Run tests with coverage information.
|
||||
"""
|
||||
ctx.run("pytest --cov=src --cov-report=term-missing", pty=True)
|
||||
Reference in New Issue
Block a user