Skip to content

fix nan mismatch handling in tolerance - #951

Merged
soxofaan merged 1 commit into
masterfrom
assert_nan_mismatch
Oct 7, 2026
Merged

soxofaan merged 1 commit into
masterfrom
assert_nan_mismatch

Conversation

@jdries

@jdries jdries commented Oct 7, 2026

Copy link
Copy Markdown
Collaborator

With this fix, pixels with diff in NaN will be added to tolerance.
Avoids false positives in apex testing.
Example of improved message when tolerance is 0:


   raise AssertionError("\n".join(issues))
E           AssertionError: Issues for variable 'var':
E           var: Nodata (NaN) mismatch: 1/582267 pixels (0.0001717% > 0%): 1 NaN only in actual, 0 NaN only in expected
E           Left and right DataArray objects are not close
E           Differing values:
E           L
E               array([[[0.068862, 0.167273, ..., 0.235385, 0.016265],
E                       [0.097264, 0.107955, ..., 0.157202, 0.057394],
E                       ...,
E                       [0.075301, 0.105344, ..., 0.055046, 0.142601],
E                       [0.100671, 0.090909, ..., 0.128065, 0.152412]],
E               
E                      [[     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan],
E                       ...,
E                       [     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan]],
E               
E                      ...,
E               
E                      [[0.10089 , 0.084615, ..., 0.13969 , 0.092689],
E                       [0.079595, 0.086667, ..., 0.204738, 0.026182],
E                       ...,
E                       [     nan,      nan, ..., 0.181572, 0.067144],
E                       [     nan,      nan, ..., 0.115353, 0.170088]],
E               
E                      [[     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan],
E                       ...,
E                       [0.061889, 0.005425, ...,      nan,      nan],
E                       [0.03645 , 0.065217, ...,      nan,      nan]]],
E                     shape=(7, 233, 357), dtype=float32)
E           R
E               array([[[0.068862, 0.167273, ..., 0.235385, 0.016265],
E                       [0.097264, 0.107955, ..., 0.157202, 0.057394],
E                       ...,
E                       [0.075301, 0.105344, ..., 0.055046, 0.142601],
E                       [0.100671, 0.090909, ..., 0.128065, 0.152412]],
E               
E                      [[     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan],
E                       ...,
E                       [     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan]],
E               
E                      ...,
E               
E                      [[0.10089 , 0.084615, ..., 0.13969 , 0.092689],
E                       [0.079595, 0.086667, ..., 0.204738, 0.026182],
E                       ...,
E                       [     nan,      nan, ..., 0.181572, 0.067144],
E                       [     nan,      nan, ..., 0.115353, 0.170088]],
E               
E                      [[     nan,      nan, ...,      nan,      nan],
E                       [     nan,      nan, ...,      nan,      nan],
E                       ...,
E                       [0.061889, 0.005425, ...,      nan,      nan],
E                       [0.03645 , 0.065217, ...,      nan,      nan]]],
E                     shape=(7, 233, 357), dtype=float32)
E           var: t 2025-05-19T00:00:00.000000000: nodata (NaN) mismatch: 1/83181 pixels (0.0%)

@jdries
jdries requested a review from soxofaan October 7, 2026 06:33
@soxofaan
soxofaan merged commit 441aa7d into master Oct 7, 2026
18 checks passed
@soxofaan
soxofaan deleted the assert_nan_mismatch branch October 7, 2026 07:36
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.

2 participants