squad-quest/tests/io.rs
2ndbeam dc94f2060c feat: Added interaction with accounts in CLI
- Account creation
- Account deletion
- Account balance management
- Account quest completion
- Added account CRUD test in tests/io.rs
2025-12-02 16:12:42 +03:00

40 lines
969 B
Rust

use squad_quest::{SquadObject, account::Account, config::Config, quest::Quest};
const CONFIG_PATH: &str = "tests/io/config.toml";
// Note: Quest::delete uses Quest::load underneath,
// and Quest::save can override files,
// so this test covers full quest CRUD
#[test]
fn quest_crud() {
let config = Config::load(CONFIG_PATH.into());
let mut quests_path = config.full_quests_path();
let quest = Quest::default();
quest.save(quests_path.clone()).unwrap();
let filename = format!("{}.toml", quest.id);
quests_path.push(filename);
Quest::delete(quests_path).unwrap();
}
#[test]
fn account_crud() {
let config = Config::load(CONFIG_PATH.into());
let mut accounts_path = config.full_accounts_path();
let account = Account::default();
account.save(accounts_path.clone()).unwrap();
let filename = format!("{}.toml", account.id);
accounts_path.push(filename);
Account::delete(accounts_path).unwrap();
}