fix(test): use go-cmp for robust floating-point comparisons#38
Merged
fix(test): use go-cmp for robust floating-point comparisons#38
Conversation
Direct equality checks on floating-point numbers in tests can be unreliable due to precision issues, leading to flaky test failures. This change replaces `testify/assert.Equal` with `github.com/google/go-cmp` for comparing structs that contain floating-point fields. By using `cmpopts.EquateApprox`, the tests now compare floats with a reasonable tolerance, making them more stable and reliable. In addition, this commit includes several project maintenance updates: - Upgrades Go version to 1.23 in `go.mod` and CI. - Updates GitHub Actions to their latest versions for better performance and security. - Improves the `.gitignore` file to exclude the `ModelGenerator/` and `include/` directories.
Several project files were missing a final newline character, which can cause issues with some tools and git diffs. This commit adds a newline to the end of the following files to ensure they are POSIX-compliant: - .gitignore - go.mod - Makefile - .github/workflows/ci.yaml
55b0b80 to
dc0cba1
Compare
mrchypark
approved these changes
Oct 2, 2025
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.
Direct equality checks on floating-point numbers in tests can be unreliable due to precision issues, leading to flaky test failures.
This change replaces
testify/assert.Equalwithgithub.com/google/go-cmpfor comparing structs that contain floating-point fields. By usingcmpopts.EquateApprox, the tests now compare floats with a reasonable tolerance, making them more stable and reliable.In addition, this commit includes several project maintenance updates:
go.modand CI..gitignorefile to exclude theModelGenerator/andinclude/directories.