diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index e7783e7..9fe166a 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -14,7 +14,7 @@ jobs: - "3.13" - "3.12" steps: - - uses: actions/checkout@v7 + - uses: actions/checkout@v4 - uses: jdx/mise-action@v4 with: tool_versions: | diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index dcf9344..1c2a636 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -10,7 +10,7 @@ jobs: deploy: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v7 + - uses: actions/checkout@v4 - uses: jdx/mise-action@v4 - name: Configure Git Credentials run: | diff --git a/project/app.py b/project/app.py index 2225470..e02d096 100644 --- a/project/app.py +++ b/project/app.py @@ -23,6 +23,7 @@ def main(name: str = "World"): Args: name: the name to be greeted """ + name = name.strip() or "World" if len(name) > 100: raise UsageError("Invalid name: maximum length is 100 characters.") if not name.isprintable(): diff --git a/tests/test_app.py b/tests/test_app.py index 7c414cd..a257a1c 100644 --- a/tests/test_app.py +++ b/tests/test_app.py @@ -26,6 +26,13 @@ def test_greet(): assert "Hello Jules! 👋" in result.output +def test_greet_whitespace(): + runner = CliRunner() + result = runner.invoke(main, ["--name", " "]) + assert result.exit_code == 0 + assert "Hello World! 👋" in result.output + + def test_name_too_long(): runner = CliRunner() result = runner.invoke(main, ["--name", "A" * 101])