1use std::time::UNIX_EPOCH;
2
3use solana_account::Account;
4use solana_account::AccountSharedData;
5use solana_account::InheritableAccountFields;
6use solana_account::DUMMY_INHERITABLE_ACCOUNT_FIELDS;
7
8pub(crate) fn get_current_timestamp() -> u64 {
9 std::time::SystemTime::now()
10 .duration_since(UNIX_EPOCH)
11 .expect("Time went backwards!")
12 .as_secs()
13}
14
15pub(crate) fn create_loadable_account_with_fields(
16 name: &str,
17 (lamports, rent_epoch): InheritableAccountFields,
18) -> AccountSharedData {
19 AccountSharedData::from(Account {
20 lamports,
21 owner: solana_sdk_ids::native_loader::id(),
22 data: name.as_bytes().to_vec(),
23 executable: true,
24 rent_epoch,
25 })
26}
27
28pub(crate) fn create_loadable_account_for_test(name: &str) -> AccountSharedData {
29 create_loadable_account_with_fields(name, DUMMY_INHERITABLE_ACCOUNT_FIELDS)
30}