
    ~%jJ                     L    d dl Zd dlmc mZ d dlmZ d dlm	Z	m
Z
mZ d Zd ZdS )    N)Decimal)HyperliquidAssetMetaround_hyperliquid_priceround_hyperliquid_sizec                  .   t          ddd          } d}t          |          }t          ||           }d}t          |          }||k    }|st          j        d|fd||f          d	t          j                    v st          j        t                    rt          j        t                    nd	d
t          j                    v st          j        t                    rt          j        t                    nd
t          j        |          t          j        |          dt          j                    v st          j        |           rt          j        |           ndt          j        |          d
t          j                    v st          j        t                    rt          j        t                    nd
t          j        |          t          j        |          d	z  }dd|iz  }t          t          j
        |                    d x}x}x}x}x}}d S )NBTCr      )coinasset_idsz_decimalsz0.123456789z0.12345==)zy%(py8)s
{%(py8)s = %(py0)s(%(py5)s
{%(py5)s = %(py1)s(%(py3)s)
}, %(py6)s)
} == %(py14)s
{%(py14)s = %(py10)s(%(py12)s)
}r   r   meta)	py0py1py3py5py6py8py10py12py14zassert %(py16)spy16)r   r   r   
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_safereprAssertionError_format_explanation)	r   @py_assert2@py_assert4@py_assert7@py_assert11@py_assert13@py_assert9@py_format15@py_format17s	            U/home/agent/projects/CryptoTradingBot/Crypto_Agent/tests/test_hyperliquid_rounding.py2test_round_hyperliquid_size_uses_sz_decimals_floorr+      s   UQAFFFD*7U'-"8"8U!"8$??U9U79CUCUU?CUUUUUUUUUUU?CUUUUUUUUUUUUU!UUUUU!UUUUUUUUUUUUU'UUUUU'UUUUUU-UUUU"8UUUUUUUUUUU$UUUUU$UUUUUU?UUUUUUUUUUU7UUUUU7UUUUUU9UUUUCUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU    c                     d} t          |           }t          |          }d}t          |          }||k    }|s}t          j        d|fd||f          dt	          j                    v st          j        t                    rt          j        t                    nddt	          j                    v st          j        t                     rt          j        t                     ndt          j        |           t          j        |          t          j        |          dt	          j                    v st          j        t                     rt          j        t                     ndt          j        |          t          j        |          dz  }dd	|iz  }t          t          j	        |                    d x} x}x}x}x}}d
} t          |           }t          |          }d}t          |          }||k    }|s}t          j        d|fd||f          dt	          j                    v st          j        t                    rt          j        t                    nddt	          j                    v st          j        t                     rt          j        t                     ndt          j        |           t          j        |          t          j        |          dt	          j                    v st          j        t                     rt          j        t                     ndt          j        |          t          j        |          dz  }dd	|iz  }t          t          j	        |                    d x} x}x}x}x}}d S )Nz12345.678912312345r   )zo%(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py1)s(%(py3)s)
})
} == %(py13)s
{%(py13)s = %(py9)s(%(py11)s)
}r   r   )r   r   r   r   py7py9py11py13zassert %(py15)spy15z0.0123456789z0.012345)
r   r   r   r   r   r   r   r   r    r!   )r"   r#   @py_assert6@py_assert10@py_assert12@py_assert8@py_format14@py_format16s           r*   :test_round_hyperliquid_price_keeps_max_significant_figuresr:      s   +:P7?#;#;P"#;<<PP@P@PP<@PPPPPPPPPPP<@PPPPPPPPPPPPP"PPPPP"PPPPPPPPPPPPP7PPPPP7PPPPPP?PPPP#;PPPP<PPPPPPPPPPPPPPPPPPPPPPPPPP@PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP+9R7>#:#:R"#:;;RzRwz?R?RR;?RRRRRRRRRRR;?RRRRRRRRRRRRR"RRRRR"RRRRRRRRRRRRR7RRRRR7RRRRRR>RRRR#:RRRR;RRRRRRRRRRRwRRRRRwRRRRRRzRRRR?RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRr,   )builtinsr   _pytest.assertion.rewrite	assertionrewriter   decimalr   src.hyperliquid.roundingr   r   r   r+   r:    r,   r*   <module>rB      s                        j j j j j j j j j jV V VS S S S Sr,   