summaryrefslogtreecommitdiff
path: root/vendor/serde_json/tests/regression/issue1004.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/serde_json/tests/regression/issue1004.rs')
-rw-r--r--vendor/serde_json/tests/regression/issue1004.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/vendor/serde_json/tests/regression/issue1004.rs b/vendor/serde_json/tests/regression/issue1004.rs
new file mode 100644
index 0000000..c09fb96
--- /dev/null
+++ b/vendor/serde_json/tests/regression/issue1004.rs
@@ -0,0 +1,12 @@
+#![cfg(feature = "arbitrary_precision")]
+
+#[test]
+fn test() {
+ let float = 5.55f32;
+ let value = serde_json::to_value(float).unwrap();
+ let json = serde_json::to_string(&value).unwrap();
+
+ // If the f32 were cast to f64 by Value before serialization, then this
+ // would incorrectly serialize as 5.550000190734863.
+ assert_eq!(json, "5.55");
+}