Skip to content

Commit f56053d

Browse files
authored
Merge pull request #1080 from serde-rs/negativenan
Add test of negative NaN and negative infinity
2 parents 421a70d + 4e091d5 commit f56053d

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

tests/test.rs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,17 +160,29 @@ fn test_write_f64() {
160160

161161
#[test]
162162
fn test_encode_nonfinite_float_yields_null() {
163-
let v = to_value(::std::f64::NAN).unwrap();
163+
let v = to_value(::std::f64::NAN.copysign(1.0)).unwrap();
164+
assert!(v.is_null());
165+
166+
let v = to_value(::std::f64::NAN.copysign(-1.0)).unwrap();
164167
assert!(v.is_null());
165168

166169
let v = to_value(::std::f64::INFINITY).unwrap();
167170
assert!(v.is_null());
168171

169-
let v = to_value(::std::f32::NAN).unwrap();
172+
let v = to_value(-::std::f64::INFINITY).unwrap();
173+
assert!(v.is_null());
174+
175+
let v = to_value(::std::f32::NAN.copysign(1.0)).unwrap();
176+
assert!(v.is_null());
177+
178+
let v = to_value(::std::f32::NAN.copysign(-1.0)).unwrap();
170179
assert!(v.is_null());
171180

172181
let v = to_value(::std::f32::INFINITY).unwrap();
173182
assert!(v.is_null());
183+
184+
let v = to_value(-::std::f32::INFINITY).unwrap();
185+
assert!(v.is_null());
174186
}
175187

176188
#[test]

0 commit comments

Comments
 (0)