use squad_quest::{config::Config, quest::Quest}; static CONFIG_PATH: &str = "./tests/main/config.toml"; #[test] fn load_quests() { let config = Config::load(CONFIG_PATH.into()); let quests = config.load_quests(); assert_eq!(quests.len(), 2); } #[test] fn empty_quest_is_default() { // First loaded quest should be 0.toml, which is empty let config = Config::load(CONFIG_PATH.into()); let mut quests = config.load_quests(); quests.sort_by(|a,b| a.id.cmp(&b.id)); let quest = quests.first().unwrap(); let default = Quest::default(); assert_eq!(*quest, default); } #[test] fn quest_one() { let config = Config::load(CONFIG_PATH.into()); let quests = config.load_quests(); let quest = quests.iter().find(|q| q.id == 1).unwrap(); let expected = Quest { id: 1, difficulty: squad_quest::quest::QuestDifficulty::Easy, reward: 100, name: "Example easy quest".to_owned(), description: "Answer this quest without any attachments or comments".to_owned(), answer: "Accept the answer if it has no attachments and an empty comment".to_owned() }; assert_eq!(*quest, expected); }