Edit: context code is
let rpc_client = RpcClient::new(url.clone());
// create fake usdc token
let create_token_tx = Transaction::new_signed_with_payer(
&[
system_instruction::create_account(
&alice_pubkey,
&token_pubkey,
rpc_client.get_minimum_balance_for_rent_exemption(
Mint::LEN
).await.unwrap(),
Mint::LEN as u64,
&spl_token::id(),
),
spl_token::instruction::initialize_mint(
&spl_token::id(),
&token_pubkey,
&alice_pubkey,
None,
6,
).unwrap(),
],
Some(&alice_pubkey),
&[&alice, &TOKEN_KEYPAIR],
rpc_client.get_latest_blockhash().await.unwrap()
);
// create fake usdc authority account
let create_account_tx = Transaction::new_signed_with_payer(
&[
spl_associated_token_account::instruction::create_associated_token_account(
&alice_pubkey,
&alice_pubkey,
&token_pubkey,
),
],
Some(&alice_pubkey),
&[&alice],
rpc_client.get_latest_blockhash().await.unwrap()
);
println!("{:#?}", create_account_tx);
// fails on the following instruction
rpc_client.send_transaction(&create_account_tx).await.unwrap();