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

MAINT: Move to new numpy.random API in test_*.py #16086

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

MridulS
Copy link
Contributor

@MridulS MridulS commented Feb 21, 2024

This PR is another go at #12669 and this builds on top of #13747. With this PR we can start addressing #11687

This PR does not make any API changes! This just edits the tests file to update them to the old numpy random generator API.

There is a ruff numpy rule, so I am trying to make it happy here. For certain tests I had to play around with seeds, atol/rtol. I still need to work a bit more on this.

Once this is in we can start looking at adding arguments to expose numpy RNG instance for functions that depend on internal random state. Once this is in we can also start deprecating NumpyRNGContext.

Copy link

Thank you for your contribution to Astropy! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.

  • Do the proposed changes actually accomplish desired goals?
  • Do the proposed changes follow the Astropy coding guidelines?
  • Are tests added/updated as required? If so, do they follow the Astropy testing guidelines?
  • Are docs added/updated as required? If so, do they follow the Astropy documentation guidelines?
  • Is rebase and/or squash necessary? If so, please provide the author with appropriate instructions. Also see instructions for rebase and squash.
  • Did the CI pass? If no, are the failures related? If you need to run daily and weekly cron jobs as part of the PR, please apply the "Extra CI" label. Codestyle issues can be fixed by the bot.
  • Is a change log needed? If yes, did the change log check pass? If no, add the "no-changelog-entry-needed" label. If this is a manual backport, use the "skip-changelog-checks" label unless special changelog handling is necessary.
  • Is this a big PR that makes a "What's new?" entry worthwhile and if so, is (1) a "what's new" entry included in this PR and (2) the "whatsnew-needed" label applied?
  • At the time of adding the milestone, if the milestone set requires a backport to release branch(es), apply the appropriate "backport-X.Y.x" label(s) before merge.

Copy link

👋 Thank you for your draft pull request! Do you know that you can use [ci skip] or [skip ci] in your commit messages to skip running continuous integration tests until you are ready?

@pllim pllim added this to the v6.1.0 milestone Feb 21, 2024
@pllim
Copy link
Member

pllim commented Mar 18, 2024

Out of scope here but I just want to link for future self... #11566

@astrofrog astrofrog modified the milestones: v6.1.0, v7.0.0 Apr 4, 2024
@@ -553,8 +553,8 @@ def test_slice_to_quantity(self):
"""
Regression test for https://github.com/astropy/astropy/issues/2003
"""

Copy link
Member

Choose a reason for hiding this comment

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

@MridulS, what if you defined a rng fixture in the main conftest.py, then you can just add an rng argument to any pytest function to get the rng. Should save a lot of lines!

Copy link
Member

@nstarman nstarman left a comment

Choose a reason for hiding this comment

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

LGTM for units. However, see my other comment for a way to simplify all the tests using a rng pytest fixture.

@nstarman nstarman self-requested a review April 16, 2024 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants