@@ -48,55 +48,70 @@ def test_f32_to_bf16() -> None:
4848 f : float = - 12.5
4949 o : sf .Float32 = sf .Float32 .from_float (f )
5050 assert sf .f32_to_bf16 (o ).to_float () == f
51+ assert sf .f32_to_bf16 (o ).to_bytes () == o .to_bf16 ().to_bytes ()
52+ assert sf .Float32 .from_bf16 (o .to_bf16 ()).to_bytes () == o .to_bytes ()
5153
5254
5355def test_f32_to_ui32 () -> None :
5456 f : float = 12.3
5557 o : sf .Float32 = sf .Float32 .from_float (f )
5658 assert sf .f32_to_ui32 (o , sf .RoundingMode .MIN ).to_int () == math .floor (f )
5759 assert sf .f32_to_ui32 (o , sf .RoundingMode .MIN ).to_bytes () == o .to_ui32 (sf .RoundingMode .MIN ).to_bytes ()
60+ assert sf .Float32 .from_ui32 (o .to_ui32 (sf .RoundingMode .MIN )).to_bytes () == o .round_to_int (sf .RoundingMode .MIN ).to_bytes ()
5861
5962
6063def test_f32_to_ui64 () -> None :
6164 f : float = 12.3
6265 o : sf .Float32 = sf .Float32 .from_float (f )
6366 assert sf .f32_to_ui64 (o , sf .RoundingMode .MIN ).to_int () == math .floor (f )
6467 assert sf .f32_to_ui64 (o , sf .RoundingMode .MIN ).to_bytes () == o .to_ui64 (sf .RoundingMode .MIN ).to_bytes ()
68+ assert sf .Float32 .from_ui64 (o .to_ui64 (sf .RoundingMode .MIN )).to_bytes () == o .round_to_int (sf .RoundingMode .MIN ).to_bytes ()
6569
6670
6771def test_f32_to_i32 () -> None :
6872 f : float = - 12.3
6973 o : sf .Float32 = sf .Float32 .from_float (f )
7074 assert sf .f32_to_i32 (o , sf .RoundingMode .MIN ).to_int () == math .floor (f )
7175 assert sf .f32_to_i32 (o , sf .RoundingMode .MIN ).to_bytes () == o .to_i32 (sf .RoundingMode .MIN ).to_bytes ()
76+ assert sf .Float32 .from_i32 (o .to_i32 (sf .RoundingMode .MIN )).to_bytes () == o .round_to_int (sf .RoundingMode .MIN ).to_bytes ()
7277
7378
7479def test_f32_to_i64 () -> None :
7580 f : float = - 12.3
7681 o : sf .Float32 = sf .Float32 .from_float (f )
7782 assert sf .f32_to_i64 (o , sf .RoundingMode .MIN ).to_int () == math .floor (f )
7883 assert sf .f32_to_i64 (o , sf .RoundingMode .MIN ).to_bytes () == o .to_i64 (sf .RoundingMode .MIN ).to_bytes ()
84+ assert sf .Float32 .from_i64 (o .to_i64 (sf .RoundingMode .MIN )).to_bytes () == o .round_to_int (sf .RoundingMode .MIN ).to_bytes ()
7985
8086
8187def test_f32_to_f16 () -> None :
8288 f : float = - 12.5
8389 o : sf .Float32 = sf .Float32 .from_float (f )
8490 assert sf .f32_to_f16 (o ).to_float () == f
8591 assert sf .f32_to_f16 (o ).to_bytes () == o .to_f16 ().to_bytes ()
92+ assert sf .Float32 .from_f16 (o .to_f16 ()).to_bytes () == o .to_bytes ()
93+
94+
95+ def test_f32_to_f32 () -> None :
96+ f : float = - 12.5
97+ o : sf .Float32 = sf .Float32 .from_float (f )
98+ assert sf .Float32 .from_f32 (o .to_f32 ()).to_bytes () == o .to_bytes ()
8699
87100
88101def test_f32_to_f64 () -> None :
89102 f : float = - 12.5
90103 o : sf .Float32 = sf .Float32 .from_float (f )
91104 assert sf .f32_to_f64 (o ).to_float () == f
92105 assert sf .f32_to_f64 (o ).to_bytes () == o .to_f64 ().to_bytes ()
106+ assert sf .Float32 .from_f64 (o .to_f64 ()).to_bytes () == o .to_bytes ()
93107
94108
95109def test_f32_to_f128 () -> None :
96110 f : float = - 12.5
97111 o : sf .Float32 = sf .Float32 .from_float (f )
98112 assert sf .f32_to_f128 (o ).to_float () == f
99113 assert sf .f32_to_f128 (o ).to_bytes () == o .to_f128 ().to_bytes ()
114+ assert sf .Float32 .from_f128 (o .to_f128 ()).to_bytes () == o .to_bytes ()
100115
101116
102117def test_f32_round_to_int () -> None :
0 commit comments