-
-
Notifications
You must be signed in to change notification settings - Fork 6
Added tests for template generation #9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
bc11f0e
added tests for template generation
santacodes 7055ba0
Apply suggestions from code review
santacodes 13e2251
added assertion logs
santacodes 6475043
added tests for template generation in ci
santacodes bb87ed6
Apply suggestions from code review
santacodes e645022
added push on main branch ci job
santacodes bad7af8
Apply suggestions from code review
santacodes 0e2683d
Apply suggestions from code review
santacodes db04463
Merge branch 'main' into tests
arjxn-py 2f51084
modified test cases for bake()
santacodes feaf031
Merge branch 'pybamm-team:main' into tests
santacodes 0cacd05
Update .github/test_on_push.yml
arjxn-py File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,55 @@ | ||
| name: Test template generation | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| pull_request: | ||
| push: | ||
| branches: | ||
| - main | ||
| jobs: | ||
| style: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Setup Python | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.12 | ||
|
|
||
| - name: Check style | ||
| run: | | ||
| python -m pip install pre-commit | ||
| pre-commit run -a | ||
|
|
||
| template_test: | ||
| needs: style | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| os: [ubuntu-latest, macos-13, macos-14, windows-latest] | ||
| python-version: ["3.9", "3.10", "3.11", "3.12"] | ||
| name: | ||
| Template Tests (${{ matrix.os }} / Python ${{ matrix.python-version }}) | ||
| steps: | ||
| - name: Checkout pybamm-cookiecutter | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up Python ${{ matrix.python-version }} | ||
| id: setup-python | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: ${{ matrix.python-version }} | ||
| cache: 'pip' | ||
|
|
||
| - name: Set up uv | ||
| uses: yezz123/setup-uv@v4 | ||
| with: | ||
| uv-venv: ".venv" | ||
agriyakhetarpal marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| - name: Install nox | ||
| run: uv pip install nox[uv] | ||
|
|
||
| - name: Test Template Generation | ||
| run: | | ||
| nox -s test-generation | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,37 @@ | ||
| import pybamm_cookiecutter as m | ||
| import pytest | ||
santacodes marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| from pytest_cookies.plugin import Cookies | ||
|
|
||
| def test_version() -> None: | ||
| assert m.__version__ | ||
|
|
||
| def test_bake_project(cookies: Cookies): | ||
| """ | ||
| Testing the template generation with default values | ||
| """ | ||
| result = cookies.bake() | ||
| assert result.exit_code == 0, f"Exited with code {result.exit_code}, expected 0" | ||
| assert result.exception is None, result.exception | ||
| assert result.project_path.name == "pybamm-example-project" | ||
| assert result.project_path.is_dir(), f"Project directory {result.project_path} not found" | ||
|
|
||
|
|
||
| def test_bake_custom_project(cookies: Cookies): | ||
| """ | ||
| Testing the template generation with custom template and checking if the projects exists in the tmp_path | ||
| """ | ||
| result = cookies.bake(extra_context={ | ||
| "author_full_name": "pybamm_user", | ||
| "author_email": "[email protected]", | ||
| "project_name": "pybamm_cookie", | ||
| "project_slug": "example", | ||
| "project_short_description": "This is an example pybamm cookiecutter template", | ||
| "project_url": "pybamm.org", | ||
| "project_version": "0.1.0", | ||
| "documentation_engine": "sphinx(rst)", | ||
| }) | ||
|
|
||
| assert result.exit_code == 0, f"Exited with code {result.exit_code}, expected 0" | ||
| assert result.exception is None, result.exception | ||
| assert result.project_path.name == "pybamm_cookie" | ||
arjxn-py marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| assert result.project_path.is_dir(), f"Project directory {result.project_path} not found" | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.