Skip to content
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

Move virtualfile-related tests into a separate test file #2784

Merged
merged 6 commits into from
Oct 31, 2023

Conversation

seisman
Copy link
Member

@seisman seisman commented Oct 31, 2023

Description of proposed changes

  • Move virtualfile-related tests into a separate test file
  • Remove an invalid pylint directive

Address #2729 (comment).

Reminders

  • Run make format and make check to make sure the code follows the style guide.
  • Add tests for new features or tests that would have caught the bug that you're fixing.
  • Add new public functions/methods/classes to doc/api/index.rst.
  • Write detailed docstrings for all functions/methods.
  • If wrapping a new module, open a 'Wrap new GMT module' issue and submit reasonably-sized PRs.
  • If adding new functionality, add an example to docstrings or tutorials.
  • Use underscores (not hyphens) in names of Python files and directories.

Slash Commands

You can write slash commands (/command) in the first line of a comment to perform
specific operations. Supported slash commands are:

  • /format: automatically format and lint the code
  • /test-gmt-dev: run full tests on the latest GMT development version

@seisman seisman changed the title refactor/test virtualfiles Move virtualfile-related tests into a separate test file Oct 31, 2023
@seisman seisman added maintenance Boring but important stuff for the core devs skip-changelog Skip adding Pull Request to changelog labels Oct 31, 2023
@seisman seisman added this to the 0.11.0 milestone Oct 31, 2023


@contextmanager
def mock(session, func, returns=None, mock_func=None):
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please note that the same code is also defined in test_clib.py.

Copy link
Member

@weiji14 weiji14 Oct 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, the typical way of sharing fixtures in pytest would be to put them in conftest.py, but not sure about this contextmanager... We could also just keep that single test_virtual_file_fails test in test_clib.py to avoid duplicating this contextmanager?

Copy link
Member Author

@seisman seisman Oct 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just realized the mock function is also used in other files like test_clib_put_matrix.py by from pygmt.tests.test_clib import mock.

This may not be a best practice but it works. Done in d5ef26e.

@seisman seisman added the needs review This PR has higher priority and needs review. label Oct 31, 2023
pygmt/tests/test_clib_virtualfiles.py Outdated Show resolved Hide resolved


@contextmanager
def mock(session, func, returns=None, mock_func=None):
Copy link
Member

@weiji14 weiji14 Oct 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, the typical way of sharing fixtures in pytest would be to put them in conftest.py, but not sure about this contextmanager... We could also just keep that single test_virtual_file_fails test in test_clib.py to avoid duplicating this contextmanager?

pygmt/tests/test_clib_virtualfiles.py Outdated Show resolved Hide resolved
@seisman seisman merged commit 58efca0 into main Oct 31, 2023
12 checks passed
@seisman seisman deleted the refactor/test-virtualfiles branch October 31, 2023 08:39
@seisman seisman removed the needs review This PR has higher priority and needs review. label Oct 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Boring but important stuff for the core devs skip-changelog Skip adding Pull Request to changelog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants