Ver código fonte

add test for scientific float

Tao Wen 8 anos atrás
pai
commit
d75b539bad
1 arquivos alterados com 13 adições e 0 exclusões
  1. 13 0
      jsoniter_float_test.go

+ 13 - 0
jsoniter_float_test.go

@@ -158,6 +158,19 @@ func Test_read_float64_cursor(t *testing.T) {
 	should.Equal(float64(2), iter.Read())
 }
 
+func Test_read_float_scientific(t *testing.T) {
+	should := require.New(t)
+	var obj interface{}
+	should.Nil(UnmarshalFromString(`1e1`, &obj))
+	should.Equal(float64(10), obj)
+	should.Nil(json.Unmarshal([]byte(`1e1`), &obj))
+	should.Equal(float64(10), obj)
+	should.Nil(UnmarshalFromString(`1.0e1`, &obj))
+	should.Equal(float64(10), obj)
+	should.Nil(json.Unmarshal([]byte(`1.0e1`), &obj))
+	should.Equal(float64(10), obj)
+}
+
 func Benchmark_jsoniter_float(b *testing.B) {
 	b.ReportAllocs()
 	input := []byte(`1.1123,`)