Support Buffers in Expect Matchers and Pretty Format#15
Open
YetAnotherClown wants to merge 5 commits intojsdotlua:mainfrom
Open
Support Buffers in Expect Matchers and Pretty Format#15YetAnotherClown wants to merge 5 commits intojsdotlua:mainfrom
YetAnotherClown wants to merge 5 commits intojsdotlua:mainfrom
Conversation
Ex. ``buffer { size = 2, data = "@" }``
Author
|
I'm keeping this PR as a draft for now as I don't believe snapshots work with these changes, or at the very least work as intended. If I am assuming correctly, Snapshots use Pretty Format. This would be an issue as the format only prints out the size and not the data, meaning any similar sized buffer would match unexpectedly. I would need to find a way to print the buffer data using Pretty Format. It's not as simple as using |
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.
This Pull Request adds support for comparing buffers using Expect Matchers and adds support for them in Pretty Format, tests are included for buffers in matchers.
To compare buffers, the matchers use:
This represents the bytes in the Buffers as a string, which we can then use to determine if the buffers are strictly equal.
As for Pretty Format, it will print out something like
buffer { size = 8, data = "0/0/0/0/0/202/182/64" }. This represents the data as numerical representation of bytes. I've also added a matcher hint when comparing buffers that are not nested in a table to suggest first reading from the buffer, as this should be simple enough when not involving large data structures, and it also will result in a more legible output.I do believe that it is reasonable to pass buffers to matchers when they're apart of large data structures such as objects or arrays which may prove difficult to read through each buffer.