Skip to content

Commit 57252cd

Browse files
authored
Merge pull request #1 from Perelyn-sama/patch-1
add checks for mint and metadata
2 parents 8180e4b + 7391f78 commit 57252cd

File tree

1 file changed

+32
-1
lines changed
  • tokens/create-token/steel/program/tests

1 file changed

+32
-1
lines changed

tokens/create-token/steel/program/tests/test.rs

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
use solana_program::hash::Hash;
22
use solana_program_test::{processor, BanksClient, ProgramTest};
3-
use solana_sdk::{signature::Keypair, signer::Signer, transaction::Transaction};
3+
use solana_sdk::{
4+
program_pack::Pack, signature::Keypair, signer::Signer, transaction::Transaction,
5+
};
46
use steel::*;
57
use steel_api::prelude::*;
68

@@ -48,6 +50,35 @@ async fn run_test() {
4850
let res = banks.process_transaction(tx).await;
4951
assert!(res.is_ok());
5052

53+
let mint_account_data = banks
54+
.get_account(token_mint_keypair.pubkey())
55+
.await
56+
.unwrap()
57+
.unwrap()
58+
.data;
59+
let deserialized_mint_data = spl_token::state::Mint::unpack(&mint_account_data).unwrap();
60+
assert!(deserialized_mint_data.is_initialized);
61+
assert_eq!(deserialized_mint_data.decimals, decimals);
62+
assert_eq!(
63+
deserialized_mint_data.mint_authority.unwrap(),
64+
payer.pubkey()
65+
);
66+
67+
let metadata_pda = Pubkey::find_program_address(
68+
&[
69+
METADATA,
70+
mpl_token_metadata::ID.as_ref(),
71+
token_mint_keypair.pubkey().as_ref(),
72+
],
73+
&mpl_token_metadata::ID,
74+
)
75+
.0;
76+
let metadata_account_data = banks.get_account(metadata_pda).await.unwrap().unwrap().data;
77+
let deserialized_metadata_data =
78+
mpl_token_metadata::accounts::Metadata::from_bytes(&metadata_account_data).unwrap();
79+
assert_eq!(deserialized_metadata_data.update_authority, payer.pubkey());
80+
assert_eq!(deserialized_metadata_data.mint, token_mint_keypair.pubkey());
81+
5182
//NFT
5283
let nft_mint_keypair = Keypair::new();
5384

0 commit comments

Comments
 (0)