test: migrate math/base/special/atanf to ULP-based testing#12795
test: migrate math/base/special/atanf to ULP-based testing#12795Planeshifter wants to merge 1 commit into
math/base/special/atanf to ULP-based testing#12795Conversation
---
type: pre_commit_static_analysis_report
description: Results of running static analysis checks when committing changes.
report:
- task: lint_filenames
status: passed
- task: lint_editorconfig
status: passed
- task: lint_markdown_pkg_readmes
status: na
- task: lint_markdown_docs
status: na
- task: lint_markdown
status: na
- task: lint_package_json
status: na
- task: lint_repl_help
status: na
- task: lint_javascript_src
status: na
- task: lint_javascript_cli
status: na
- task: lint_javascript_examples
status: na
- task: lint_javascript_tests
status: passed
- task: lint_javascript_benchmarks
status: na
- task: lint_python
status: na
- task: lint_r
status: na
- task: lint_c_src
status: na
- task: lint_c_examples
status: na
- task: lint_c_benchmarks
status: na
- task: lint_c_tests_fixtures
status: na
- task: lint_shell
status: na
- task: lint_typescript_declarations
status: passed
- task: lint_typescript_tests
status: na
- task: lint_license_headers
status: passed
---
|
Hello! 👋 We've noticed that you've been opening a number of PRs addressing good first issues. Thank you for your interest and enthusiasm! Now that you've made a few contributions, we suggest no longer working on good first issues. Instead, we encourage you to prioritize cleaning up any PRs which have yet to be merged and then proceed to work on more involved tasks. Not only does this ensure that other new contributors can work on things and get ramped up on all things stdlib, it also ensures that you can spend your time on more challenging problems. 🚀 For ideas for future PRs, feel free to search the codebase for TODOs and FIXMEs and be sure to check out other open issues on the issue tracker. Cheers! |
Coverage Report
The above coverage report was generated for the changes in this PR. |
Resolves a part of #11352.
Description
This pull request:
test/test.jsandtest/test.native.jsinmath/base/special/atanffrom relative-tolerance (EPS-based) assertions to ULP-difference assertions via@stdlib/number/float32/base/assert/is-almost-same-value(the single-precision variant, following the precedent ofmath/base/special/acothfandmath/base/special/atanhf)@stdlib/number/float32/base/ulp-difference: thetiny_negative,tiny_positive,huge_negative, andhuge_positiveblocks match exactly (ULP 0) and therefore use plaint.strictEqual, the[ -0.8, 0.8 ]block requires 3 ULPs (the original test used a widened1.8 * EPStolerance there), and all remaining blocks require 1 ULPRelated Issues
This pull request has the following related issues:
math/base/specialpackages from relative tolerance testing to ULP difference testing (tracking issue) #11352Questions
No.
Other
Minimality of the ULP values was verified by recomputing the maximum ULP difference per fixture block and by confirming that reducing the
[ -0.8, 0.8 ]block from 3 to 2 ULPs fails in both the JavaScript and native test suites. The full JavaScript and native test suites pass with these values (6514/6514 assertions each).Checklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
This PR was written primarily by Claude Code, including the test migration, minimum-ULP discovery, and an independent adversarial verification pass that recomputed the per-block ULP values from the fixtures.
@stdlib-js/reviewers