@@ -2,40 +2,40 @@ use {super::Price, assert_float_eq::assert_float_absolute_eq};
22
33#[ test]
44fn price_constructs ( ) {
5- let price = Price :: parse_str ( "42.68" , 8 ) . unwrap ( ) ;
5+ let price = Price :: parse_str ( "42.68" , - 8 ) . unwrap ( ) ;
66 assert_eq ! ( price. 0 . get( ) , 4_268_000_000 ) ;
7- assert_float_absolute_eq ! ( price. to_f64( 8 ) . unwrap( ) , 42.68 ) ;
7+ assert_float_absolute_eq ! ( price. to_f64( - 8 ) . unwrap( ) , 42.68 ) ;
88
9- let price2 = Price :: from_integer ( 2 , 8 ) . unwrap ( ) ;
9+ let price2 = Price :: from_integer ( 2 , - 8 ) . unwrap ( ) ;
1010 assert_eq ! ( price2. 0 . get( ) , 200_000_000 ) ;
11- assert_float_absolute_eq ! ( price2. to_f64( 8 ) . unwrap( ) , 2. ) ;
11+ assert_float_absolute_eq ! ( price2. to_f64( - 8 ) . unwrap( ) , 2. ) ;
1212
1313 let price3 = Price :: from_mantissa ( 123_456 ) . unwrap ( ) ;
1414 assert_eq ! ( price3. 0 . get( ) , 123_456 ) ;
15- assert_float_absolute_eq ! ( price3. to_f64( 8 ) . unwrap( ) , 0.001_234_56 ) ;
15+ assert_float_absolute_eq ! ( price3. to_f64( - 8 ) . unwrap( ) , 0.001_234_56 ) ;
1616
17- let price4 = Price :: from_f64 ( 42.68 , 8 ) . unwrap ( ) ;
17+ let price4 = Price :: from_f64 ( 42.68 , - 8 ) . unwrap ( ) ;
1818 assert_eq ! ( price4. 0 . get( ) , 4_268_000_000 ) ;
19- assert_float_absolute_eq ! ( price4. to_f64( 8 ) . unwrap( ) , 42.68 ) ;
19+ assert_float_absolute_eq ! ( price4. to_f64( - 8 ) . unwrap( ) , 42.68 ) ;
2020}
2121
2222#[ test]
2323fn price_constructs_negative_mantissa ( ) {
24- let price = Price :: parse_str ( "-42.68" , 8 ) . unwrap ( ) ;
24+ let price = Price :: parse_str ( "-42.68" , - 8 ) . unwrap ( ) ;
2525 assert_eq ! ( price. 0 . get( ) , -4_268_000_000 ) ;
26- assert_float_absolute_eq ! ( price. to_f64( 8 ) . unwrap( ) , -42.68 ) ;
26+ assert_float_absolute_eq ! ( price. to_f64( - 8 ) . unwrap( ) , -42.68 ) ;
2727
28- let price2 = Price :: from_integer ( -2 , 8 ) . unwrap ( ) ;
28+ let price2 = Price :: from_integer ( -2 , - 8 ) . unwrap ( ) ;
2929 assert_eq ! ( price2. 0 . get( ) , -200_000_000 ) ;
30- assert_float_absolute_eq ! ( price2. to_f64( 8 ) . unwrap( ) , -2. ) ;
30+ assert_float_absolute_eq ! ( price2. to_f64( - 8 ) . unwrap( ) , -2. ) ;
3131
3232 let price3 = Price :: from_mantissa ( -123_456 ) . unwrap ( ) ;
3333 assert_eq ! ( price3. 0 . get( ) , -123_456 ) ;
34- assert_float_absolute_eq ! ( price3. to_f64( 8 ) . unwrap( ) , -0.001_234_56 ) ;
34+ assert_float_absolute_eq ! ( price3. to_f64( - 8 ) . unwrap( ) , -0.001_234_56 ) ;
3535
36- let price4 = Price :: from_f64 ( -42.68 , 8 ) . unwrap ( ) ;
36+ let price4 = Price :: from_f64 ( -42.68 , - 8 ) . unwrap ( ) ;
3737 assert_eq ! ( price4. 0 . get( ) , -4_268_000_000 ) ;
38- assert_float_absolute_eq ! ( price4. to_f64( 8 ) . unwrap( ) , -42.68 ) ;
38+ assert_float_absolute_eq ! ( price4. to_f64( - 8 ) . unwrap( ) , -42.68 ) ;
3939}
4040
4141#[ test]
@@ -59,42 +59,42 @@ fn price_constructs_zero_exponent() {
5959
6060#[ test]
6161fn price_rejects_zero_mantissa ( ) {
62- Price :: parse_str ( "0.0" , 8 ) . unwrap_err ( ) ;
63- Price :: from_integer ( 0 , 8 ) . unwrap_err ( ) ;
62+ Price :: parse_str ( "0.0" , - 8 ) . unwrap_err ( ) ;
63+ Price :: from_integer ( 0 , - 8 ) . unwrap_err ( ) ;
6464 Price :: from_mantissa ( 0 ) . unwrap_err ( ) ;
65- Price :: from_f64 ( -0.0 , 8 ) . unwrap_err ( ) ;
65+ Price :: from_f64 ( -0.0 , - 8 ) . unwrap_err ( ) ;
6666}
6767
6868#[ test]
6969fn price_rejects_too_precise ( ) {
7070 Price :: parse_str ( "42.68" , 0 ) . unwrap_err ( ) ;
71- Price :: parse_str ( "42.68" , 1 ) . unwrap_err ( ) ;
72- Price :: parse_str ( "42.68" , 2 ) . unwrap ( ) ;
71+ Price :: parse_str ( "42.68" , - 1 ) . unwrap_err ( ) ;
72+ Price :: parse_str ( "42.68" , - 2 ) . unwrap ( ) ;
7373}
7474
7575#[ test]
7676fn price_ops ( ) {
77- let price1 = Price :: parse_str ( "12.34" , 8 ) . unwrap ( ) ;
78- let price2 = Price :: parse_str ( "23.45" , 8 ) . unwrap ( ) ;
77+ let price1 = Price :: parse_str ( "12.34" , - 8 ) . unwrap ( ) ;
78+ let price2 = Price :: parse_str ( "23.45" , - 8 ) . unwrap ( ) ;
7979 assert_float_absolute_eq ! (
8080 price1
8181 . add_with_same_mantissa( price2)
8282 . unwrap( )
83- . to_f64( 8 )
83+ . to_f64( - 8 )
8484 . unwrap( ) ,
8585 12.34 + 23.45
8686 ) ;
8787 assert_float_absolute_eq ! (
88- price1. mul_integer( 2 ) . unwrap( ) . to_f64( 8 ) . unwrap( ) ,
88+ price1. mul_integer( 2 ) . unwrap( ) . to_f64( - 8 ) . unwrap( ) ,
8989 12.34 * 2.
9090 ) ;
9191 assert_float_absolute_eq ! (
92- price1. div_integer( 2 ) . unwrap( ) . to_f64( 8 ) . unwrap( ) ,
92+ price1. div_integer( 2 ) . unwrap( ) . to_f64( - 8 ) . unwrap( ) ,
9393 12.34 / 2.
9494 ) ;
9595
9696 assert_float_absolute_eq ! (
97- price1. mul_decimal( 3456 , 2 ) . unwrap( ) . to_f64( 8 ) . unwrap( ) ,
97+ price1. mul_decimal( 3456 , - 2 ) . unwrap( ) . to_f64( - 8 ) . unwrap( ) ,
9898 12.34 * 34.56
9999 ) ;
100100}
0 commit comments