
    Dj                    n    d dl mZ d dlZd dlmc mZ d dlZd dl	m
Z
mZ d dlmZ d dlmZ d Zd Zd ZdS )	    )annotationsN)export_finance_snapshottrader_desk_to_finance_snapshot)_payload)build_trader_desk_reportc                 j    t          t                                } d|                                 dddS )NokF)statusreportlive_order_allowedmainnet_signed_action)r   r   to_dict)r   s    [/home/agent/projects/CryptoTradingBot/Crypto_Agent/tests/test_trader_desk_finance_bridge.py_desk_payloadr   
   s0    %hjj11Ffnn&6&6ensttt    c                    t          t                                } | d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}| d         d	         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}| d         d         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}| d         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}| d         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}| d         }|s:ddt          j        |          iz  }t          t          j        |                    d }t          d | d         D                       }|d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}|d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}|d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}|d         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}|d	         }d
}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d x}x}}|d         }|s:ddt          j        |          iz  }t          t          j        |                    d }d S )Nschema_versionz$finance_crypto_trader_desk_bridge.v1==z%(py1)s == %(py4)spy1py4assert %(py6)spy6safety_boundarydashboard_executes_ordersFisz%(py1)s is %(py4)sexecution_allowedr   r   trade_intentszassert %(py1)sr   c              3  2   K   | ]}|d          dk    |V  dS )coinBTCN ).0rows     r   	<genexpr>zYtest_finance_bridge_exports_trade_intents_without_execution_permission.<locals>.<genexpr>   s0      PPs3v;%;O;Os;O;O;O;OPPr   source_enginejarvis_trader_desk_v1modeapprovalr
   awaiting_final_preflight	intent_id)r   r   
@pytest_ar_call_reprcompare	_safereprAssertionError_format_explanationnext)snapshot@py_assert0@py_assert3@py_assert2@py_format5@py_format7@py_format2btcs           r   Ftest_finance_bridge_exports_trade_intents_without_execution_permissionr>      s   .}??H$%O)OO%)OOOOOOOOOOO%)OOOOOO%OOOO)OOOOOOOOOOOOOOOOOOOOOOOOOOOO%&'BCLuLCuLLLLLLLLLLCuLLLLLCLLLLuLLLLLLLLLLLLLLLLLLLLLLLLLLL%&':;DuD;uDDDDDDDDDD;uDDDDD;DDDDuDDDDDDDDDDDDDDDDDDDDDDDDDDD()2U2)U2222222222)U22222)2222U222222222222222222222222222+,55,5555555555,55555,5555555555555555555555555555555O$$$$$$$$$$$$$$$$$$$$$$$$$
PPh7PPP
P
PC:#::#:::::::::::#::::::::::#::::::::::::::::::::::::::::v;$*$;*$$$$$$$$$$;*$$$$$;$$$$*$$$$$$$$$$$$$$$$$$$$$$$$$$$x=666=66666666666=666666=66666666666666666666666666666666"#,u,#u,,,,,,,,,,#u,,,,,#,,,,u,,,,,,,,,,,,,,,,,,,,,,,,,,,*+4u4+u4444444444+u44444+4444u444444444444444444444444444{r   c           
     h
   | dz  dz  }t          t                      |          }|d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}x}}|d         }d}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}x}}|j        } |            }|sddt          j	                    v st          j
        |          rt          j        |          ndt          j        |          t          j        |          dz  }t          t          j        |                    d x}}|j        }d} ||          }	|	j        }
 |
            }|sddt          j	                    v st          j
        |          rt          j        |          ndt          j        |          t          j        |          t          j        |	          t          j        |
          t          j        |          dz  }t          t          j        |                    d x}x}x}	x}
}t          j        |                                          }|d         d         }d}||k    }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}x}}|d         d         d         }d}||u }|slt          j        d|fd||f          t          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}x}}d}|j        }d} ||          }|j        } |            }||v }|st          j        d|fd||f          t          j        |          dt          j	                    v st          j
        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          t          j        |          t          j        |          dz  }dd |iz  }t          t          j        |                    d x}x}x}x}x}x}}d S )!Ncrypto_traderztrader_desk_latest.json)targetr
   r	   r   r   r   r   r   r!   Fr   r    zAassert %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.exists
}()
}rA   )py0py2r   z.mdzassert %(py10)s
{%(py10)s = %(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.with_suffix
}(%(py4)s)
}.exists
}()
})rB   rC   r   r   py8py10	portfoliovenueHyperliquidr"   r   r   zexecution_allowed=false)in)z%(py1)s in %(py13)s
{%(py13)s = %(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py5)s
{%(py5)s = %(py3)s.with_suffix
}(%(py7)s)
}.read_text
}()
})r   py3py5py7py9py11py13zassert %(py15)spy15)r   r   r0   r1   r2   r3   r4   exists@py_builtinslocals_should_repr_global_namewith_suffixjsonloads	read_text)tmp_pathrA   resultr7   r8   r9   r:   r;   @py_assert1@py_assert5@py_assert7@py_assert9@py_format11payload@py_assert4@py_assert6@py_assert8@py_assert10@py_assert12@py_format14@py_format16s                        r   ,test_finance_bridge_writes_json_and_markdownrh   !   s   '*CCF$]__VDDDF(#t#t##########t#########t###########################%&/%/&%//////////&%/////&////%///////////////////////////===???66=?-e-e$$-$+-++---------------6-----6----------e----$----+------------------------------j))++,,G;(9M9(M9999999999(M99999(9999M999999999999999999999999999?#A&'>?H5H?5HHHHHHHHHH?5HHHHH?HHHH5HHHHHHHHHHHHHHHHHHHHHHHHHHH$M(:M5M(:(:5(A(AM(A(KM(K(K(M(MM$(MMMMMMMMMMM$(MMMMMM$MMMMMMMMMMMMMMMMMMMMMM(:MMMM5MMMM(AMMMM(KMMMM(MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMr   )
__future__r   builtinsrR   _pytest.assertion.rewrite	assertionrewriter0   rV   src.trader_desk.finance_bridger   r   tests.test_trader_deskr   src.trader_desk.decisionr   r   r>   rh   r&   r   r   <module>rq      s    " " " " " "               c c c c c c c c + + + + + + = = = = = =u u u
  $N N N N Nr   