
    %jy                     @    d dl mZ d dlmZmZ d Zd Zd Zd Zd Z	dS )	    )Account)diagnose_hyperliquid_envload_hyperliquid_envc          	      H    |                      d| d| d| dd           d S )NzHL_WALLET_ADDRESS=z
HL_API_PRIVATE_KEY=z&
API Wallet Name=Hermes Agent
API Key=
zutf-8)encoding)
write_text)pathwalletprivate_keyapi_keys       $tests/test_hyperliquid_env_loader.py
_write_envr      s^    OO	V 	 	)	 	 	 	 	           c                 P   t          j                    }t          j                    }t          j                    j        }t          j                    j        }t          | dz  ||j                                        |j                   t          | dz  ||j                                        |j                   t          d| f          }|j        dk    sJ |j        j	        dk    sJ |j
        |k    sJ |j        |j        k    sJ |j        |j        k    sJ |j        du sJ |j        du sJ |                                d                             |d d	                   sJ |j                                        t#          |                                          vsJ d S )
NMainnet.envr   r   r   Testnet.envtestnetsearch_dirsTFaccount_address_masked   )r   createaddressr   keyhexr   envenv_file_pathnameaccount_addressapi_wallet_address_from_envapi_wallet_address_derivedsafe_to_run_testnet_smokeswill_use_mainnet_keymasked
startswithstr)tmp_path	main_acct	test_acctmain_wallettest_walletcfgs         r   2test_loader_uses_only_requested_env_file_and_masksr/      s     I  I.""*K.""*Kx-'IZIZI\I\fofwxxxxx-'IZIZI\I\fofwxxxx
yxk
B
B
BC7i!]2222+----*i.?????)Y->>>>>)T1111#u,,,,::<<01<<[!_MMMMM=c#**,,&7&7777777r   c                 (   t          j                    }t          | dz  t          j                    j        |j                                        |j                   t          d| f          }|d         du sJ |d         du sJ d|d	         v sJ d S )
Nr   r   r   r   env_file_foundFr$   missing_env_fileerrorsr   r   r   r   r   r   r   r)   acctdiags      r   Itest_loader_fails_closed_when_requested_file_missing_even_if_other_existsr8   %   s    >Dx-'0@0@0HVZV^VbVbVdVdnrnz{{{{#IH;GGGD !U****,-6666h//////r   c                 D   t          j                    }t          j                    }t          | dz  |j        |j                                        |j                   t          d| f          }|d         du sJ |d         du sJ d|d	         v sJ |d
         du sJ d S )Nr   r   r   r   "api_wallet_key_matches_private_keyF)account_address_equals_api_wallet_addressapi_key_private_key_mismatchr3   r$   r4   )r)   r6   otherr7   s       r   Mtest_loader_blocks_api_key_private_key_mismatch_and_account_equals_api_walletr>   0   s    >DNEx-'$(,,..bgbopppp#IH;GGGD45>>>>;<EEEE)T(^;;;;,-666666r   c                    t          j                    }t          | dz  |j        |j                                        |j                   t          d| f          }|d         du sJ d|d         v sJ |d         d	u sJ d S )
Nr   r   r   r   r;   Tr3   r$   Fr4   r5   s      r   6test_loader_blocks_account_address_equal_to_api_walletr@   =   s    >Dx-'$(,,..bfbnoooo#IH;GGGD;<DDDD6$x.HHHH,-666666r   N)
eth_accountr   src.config.hyperliquid_envr   r   r   r/   r8   r>   r@    r   r   <module>rD      s          U U U U U U U U  8 8 8*0 0 0
7 
7 
77 7 7 7 7r   