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

Enabling Scalar Tests #122

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

alanprot
Copy link
Contributor

Comparing json allow us to enable those tests.

I wanted to do a change on scalar and having those tests enabled give us more confidence to do the change.

Copy link
Contributor

@yeya24 yeya24 left a comment

Choose a reason for hiding this comment

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

LGTM

@@ -2132,3 +2128,11 @@ func TestEngineRecoversFromPanic(t *testing.T) {
})

}

func jsonEqual(t *testing.T, expected interface{}, actual interface{}) {
e, err := json.Marshal(expected)
Copy link
Member

Choose a reason for hiding this comment

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

I think this could lead to more problems while checking equality. JSON doesn't support NaN or Inf (golang/go#3480). There's also stuff with ordering (golang/go#6244) that could end up as confusing bugs, as labels are marshaled as a map.

Maybe not handling all those complications here and just comparing structs recursively would be better? I raised efficientgo/core#3 a few days ago to add support for NaN. I'll ping @bwplotka for review, and maybe that can be used here instead? WDYT? 🙂

Copy link
Collaborator

Choose a reason for hiding this comment

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

If we are blocked by that PR, maybe there's a way to add these cases in a separate test and use a custom comparison function?

Copy link
Member

Choose a reason for hiding this comment

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

Yup! We can do that.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Now that efficientgo/core#3 is merged, can we enable the tests for NaN values?

Copy link
Contributor

Choose a reason for hiding this comment

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

Couldnt we just compare oldResult.String() and newResult.String() for string equality?

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

Successfully merging this pull request may close these issues.

5 participants