Improve ensure_memoryview test coverage & make minor fixes#6333
Merged
Improve ensure_memoryview test coverage & make minor fixes#6333
ensure_memoryview test coverage & make minor fixes#6333Conversation
0a6efb6 to
3f08f13
Compare
Contributor
Member
Author
|
Planning on merging EOD tomorrow if no comments |
As `memoryview.cast(...)` doesn't know how to handle F-order, go through `PickleBuffer.raw(...)`, which can handle this case. Also pick out the underlying `.obj` of the `memoryview` to ensure the `memoryview` that `PickleBuffer.raw(...)` creates points back at the original object and not the `memoryview` we created.
Handle different types, shapes, striding, etc.
Try using `ensure_memoryview` with a variety of different NumPy `ndarray` types to improve test coverage.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Expands
ensure_memoryviews test coverage to handle different types, shapes, strides, etc. Testing covers more cases in the builtin Python test coverage as well as the NumPy tests. Also more consistently usebytearrays to back memory when copies are required. Includes a fix for F-ordered data. Also returns the input argument as-is if it already meets all requirements, which is tested for. Finally addsensure_memoryviewin a few more places.pre-commit run --all-files