Prechádzať zdrojové kódy

update function name to transfer with cpi

Valentin Madrid 2 rokov pred
rodič
commit
60e55ad6fd

+ 2 - 1
basics/transfer-sol/seahorse/programs/seahorse/src/dot/program.rs

@@ -3,6 +3,7 @@
 #![allow(unused_mut)]
 use crate::{id, seahorse_util::*};
 use anchor_lang::{prelude::*, solana_program};
+use anchor_spl::token::{self, Mint, Token, TokenAccount};
 use std::{cell::RefCell, rc::Rc};
 
 #[account]
@@ -52,7 +53,7 @@ pub fn init_mock_account_handler<'info>(
     );
 }
 
-pub fn transfer_handler<'info>(
+pub fn transfer_sol_with_cpi_handler<'info>(
     mut sender: SeahorseSigner<'info, '_>,
     mut recipient: Mutable<LoadedMockAccount<'info, '_>>,
     mut amount: u64,

+ 7 - 3
basics/transfer-sol/seahorse/programs/seahorse/src/lib.rs

@@ -5,6 +5,10 @@
 pub mod dot;
 
 use anchor_lang::prelude::*;
+use anchor_spl::{
+    associated_token::{self, AssociatedToken},
+    token::{self, Mint, Token, TokenAccount},
+};
 
 use dot::program::*;
 use std::{cell::RefCell, rc::Rc};
@@ -202,7 +206,7 @@ mod seahorse {
 
     #[derive(Accounts)]
     # [instruction (amount : u64)]
-    pub struct Transfer<'info> {
+    pub struct TransferSolWithCpi<'info> {
         #[account(mut)]
         pub sender: Signer<'info>,
         #[account(mut)]
@@ -210,7 +214,7 @@ mod seahorse {
         pub system_program: Program<'info, System>,
     }
 
-    pub fn transfer(ctx: Context<Transfer>, amount: u64) -> Result<()> {
+    pub fn transfer_sol_with_cpi(ctx: Context<TransferSolWithCpi>, amount: u64) -> Result<()> {
         let mut programs = HashMap::new();
 
         programs.insert(
@@ -226,7 +230,7 @@ mod seahorse {
 
         let recipient = dot::program::MockAccount::load(&mut ctx.accounts.recipient, &programs_map);
 
-        transfer_handler(sender.clone(), recipient.clone(), amount);
+        transfer_sol_with_cpi_handler(sender.clone(), recipient.clone(), amount);
 
         dot::program::MockAccount::store(recipient);
 

+ 1 - 1
basics/transfer-sol/seahorse/programs_py/seahorse.py

@@ -19,7 +19,7 @@ def init_mock_account(signer: Signer, mock_account: Empty[MockAccount]):
     account.mock_value = u8(0)
 
 @instruction
-def transfer(sender: Signer, recipient: MockAccount, amount: u64):
+def transfer_sol_with_cpi(sender: Signer, recipient: MockAccount, amount: u64):
     sender.transfer_lamports(
         to = recipient,
         amount = amount,

+ 1 - 1
basics/transfer-sol/seahorse/tests/seahorse.ts

@@ -27,7 +27,7 @@ describe("seahorse", () => {
     // Convert to lamport.
     const lamports: number = anchor.web3.LAMPORTS_PER_SOL * amount;
     const tx = await program.methods
-      .transfer(new anchor.BN(lamports))
+      .transferSolWithCpi(new anchor.BN(lamports))
       .accounts({
         recipient: mockAccount[0],
         sender: program.provider.publicKey,