@@ -75,8 +75,8 @@ use jito_vault_client::{
7575 types:: WithdrawalAllocationMethod ,
7676} ;
7777use jito_vault_core:: {
78- config:: Config as VaultConfig , vault:: Vault , vault_ncn_ticket :: VaultNcnTicket ,
79- vault_operator_delegation:: VaultOperatorDelegation ,
78+ burn_vault :: BurnVault , config:: Config as VaultConfig , vault:: Vault ,
79+ vault_ncn_ticket :: VaultNcnTicket , vault_operator_delegation:: VaultOperatorDelegation ,
8080 vault_update_state_tracker:: VaultUpdateStateTracker ,
8181} ;
8282use log:: info;
@@ -96,7 +96,9 @@ use solana_sdk::{
9696 system_program,
9797 transaction:: Transaction ,
9898} ;
99- use spl_associated_token_account:: get_associated_token_address;
99+ use spl_associated_token_account:: {
100+ get_associated_token_address, instruction:: create_associated_token_account_idempotent,
101+ } ;
100102use switchboard_on_demand_client:: { CrossbarClient , FetchUpdateParams , PullFeed , QueueAccountData } ;
101103use tokio:: time:: sleep;
102104
@@ -3039,16 +3041,17 @@ pub async fn create_test_ncn(handler: &CliHandler) -> Result<()> {
30393041 let ( config, _, _) = RestakingConfig :: find_program_address ( & handler. restaking_program_id ) ;
30403042
30413043 let mut ix_builder = InitializeNcnBuilder :: new ( ) ;
3042- ix_builder
3044+ let mut ix = ix_builder
30433045 . config ( config)
30443046 . admin ( keypair. pubkey ( ) )
30453047 . base ( base. pubkey ( ) )
30463048 . ncn ( ncn)
30473049 . instruction ( ) ;
3050+ ix. program_id = handler. restaking_program_id ;
30483051
30493052 send_and_log_transaction (
30503053 handler,
3051- & [ ix_builder . instruction ( ) ] ,
3054+ & [ ix ] ,
30523055 & [ & base] ,
30533056 "Created Test Ncn" ,
30543057 & [ format ! ( "NCN: {:?}" , ncn) ] ,
@@ -3143,6 +3146,7 @@ pub async fn create_and_add_test_vault(
31433146 deposit_fee_bps : u16 ,
31443147 withdrawal_fee_bps : u16 ,
31453148 reward_fee_bps : u16 ,
3149+ initialize_token_amount : u64 ,
31463150) -> Result < ( ) > {
31473151 let keypair = handler. keypair ( ) ;
31483152
@@ -3209,42 +3213,57 @@ pub async fn create_and_add_test_vault(
32093213 )
32103214 . await ?;
32113215
3216+ let vault_st_token_account = get_associated_token_address ( & vault, & token_mint. pubkey ( ) ) ;
3217+
3218+ let ( burn_vault, _, _) =
3219+ BurnVault :: find_program_address ( & handler. vault_program_id , & base. pubkey ( ) ) ;
3220+
3221+ let burn_vault_vrt_token_account =
3222+ get_associated_token_address ( & burn_vault, & vrt_mint. pubkey ( ) ) ;
3223+
32123224 // -------------- Initialize Vault --------------
3213- let initialize_vault_ix = InitializeVaultBuilder :: new ( )
3225+ let mut initialize_vault_ix_builder = InitializeVaultBuilder :: new ( ) ;
3226+ initialize_vault_ix_builder
32143227 . config ( vault_config)
3215- . admin ( keypair. pubkey ( ) )
3216- . base ( base. pubkey ( ) )
32173228 . vault ( vault)
32183229 . vrt_mint ( vrt_mint. pubkey ( ) )
32193230 . st_mint ( token_mint. pubkey ( ) )
3231+ . admin ( keypair. pubkey ( ) )
3232+ . base ( base. pubkey ( ) )
3233+ . admin_st_token_account ( admin_ata)
3234+ . vault_st_token_account ( vault_st_token_account)
3235+ . burn_vault ( burn_vault)
3236+ . burn_vault_vrt_token_account ( burn_vault_vrt_token_account)
3237+ . associated_token_program ( spl_associated_token_account:: id ( ) )
32203238 . reward_fee_bps ( reward_fee_bps)
32213239 . withdrawal_fee_bps ( withdrawal_fee_bps)
32223240 . decimals ( 9 )
32233241 . deposit_fee_bps ( deposit_fee_bps)
32243242 . system_program ( system_program:: id ( ) )
3225- . instruction ( ) ;
3243+ . initialize_token_amount ( initialize_token_amount) ;
3244+ let mut initialize_vault_ix = initialize_vault_ix_builder. instruction ( ) ;
3245+ initialize_vault_ix. program_id = handler. vault_program_id ;
32263246
3227- let create_vault_ata_ix =
3228- spl_associated_token_account:: instruction:: create_associated_token_account_idempotent (
3229- & keypair. pubkey ( ) ,
3230- & vault,
3231- & token_mint. pubkey ( ) ,
3232- & handler. token_program_id ,
3233- ) ;
3234- let create_admin_vrt_ata_ix =
3235- spl_associated_token_account:: instruction:: create_associated_token_account_idempotent (
3236- & keypair. pubkey ( ) ,
3237- & keypair. pubkey ( ) ,
3238- & vrt_mint. pubkey ( ) ,
3239- & handler. token_program_id ,
3240- ) ;
3241- let create_vault_vrt_ata_ix =
3242- spl_associated_token_account:: instruction:: create_associated_token_account_idempotent (
3243- & keypair. pubkey ( ) ,
3244- & vault,
3245- & vrt_mint. pubkey ( ) ,
3246- & handler. token_program_id ,
3247- ) ;
3247+ let create_admin_vrt_ata_ix = create_associated_token_account_idempotent (
3248+ & keypair. pubkey ( ) ,
3249+ & keypair. pubkey ( ) ,
3250+ & vrt_mint. pubkey ( ) ,
3251+ & handler. token_program_id ,
3252+ ) ;
3253+
3254+ let admin_st_token_account_ix = create_associated_token_account_idempotent (
3255+ & keypair. pubkey ( ) ,
3256+ & keypair. pubkey ( ) ,
3257+ & token_mint. pubkey ( ) ,
3258+ & spl_token:: ID ,
3259+ ) ;
3260+
3261+ let vault_st_token_account_ix = create_associated_token_account_idempotent (
3262+ & keypair. pubkey ( ) ,
3263+ & vault,
3264+ & token_mint. pubkey ( ) ,
3265+ & spl_token:: ID ,
3266+ ) ;
32483267
32493268 let vault_token_ata = get_associated_token_address ( & vault, & token_mint. pubkey ( ) ) ;
32503269 let admin_token_ata = get_associated_token_address ( & keypair. pubkey ( ) , & token_mint. pubkey ( ) ) ;
@@ -3266,10 +3285,10 @@ pub async fn create_and_add_test_vault(
32663285 send_and_log_transaction (
32673286 handler,
32683287 & [
3288+ admin_st_token_account_ix,
3289+ vault_st_token_account_ix,
32693290 initialize_vault_ix,
3270- create_vault_ata_ix,
32713291 create_admin_vrt_ata_ix,
3272- create_vault_vrt_ata_ix,
32733292 mint_to_ix,
32743293 ] ,
32753294 & [ & base, & vrt_mint] ,
0 commit comments