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

Feature Request: assert that key is present but ignore value #17

Open
naamancurtis opened this issue Dec 6, 2020 · 3 comments
Open

Comments

@naamancurtis
Copy link

I was wondering if you'd be open to including some kind of flag within the macro that indicates that it should check that the key exists, but ignores the value (or just accepts any value).

The main reason for doing this would be for values such as decimals where checking for exact equality isn't likely to work eg:

json atoms at path ".price" are not equal:
    expected:
        2.97
    actual:
        2.9699999999999998
@naamancurtis naamancurtis changed the title Feature: assert that key to be present but ignore value Feature Request: assert that key to be present but ignore value Dec 6, 2020
@naamancurtis naamancurtis changed the title Feature Request: assert that key to be present but ignore value Feature Request: assert that key is present but ignore value Dec 6, 2020
@davidpdrsn
Copy link
Owner

In those cases I usually try and access the element with something like json["foo"]["bar"][1337] without any assertions since that'll panic if the key isn't there. Of course not as elegant but without a custom json! macro I don't think a better solution is possible.

A custom json! macro would also be needed to fix #8 so at least there is two use cases now.

@angristan
Copy link

I'd love this too :)

@GrandmasterTash
Copy link

JsonUnit for Java has some good features related to this that may inspire you :)
You can use values like ${json-unit.any-number} ${json-unit.any-string} ${json-unit-ignore} regex and so on....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants