| 779 | |
| 780 | #[test] |
| 781 | fn test_prerequisite_toggle() { |
| 782 | let mut path = PathBuf::from(env!("CARGO_MANIFEST_DIR")); |
| 783 | path.push("resources/fixtures/repo.json"); |
| 784 | let json_str = fs::read_to_string(path).unwrap(); |
| 785 | let repo = load_json(&json_str); |
| 786 | assert!(repo.is_ok()); |
| 787 | let repo = repo.unwrap(); |
| 788 | |
| 789 | let user = FPUser::new().with("city", "4"); |
| 790 | |
| 791 | let toggle = repo.toggles.get("prerequisite_toggle").unwrap(); |
| 792 | let r = toggle.eval(&user, &repo.segments, &repo.toggles, false, MAX_DEEP, None); |
| 793 | |
| 794 | assert!(r.value.unwrap().as_object().unwrap().get("2").is_some()); |
| 795 | } |
| 796 | |
| 797 | #[test] |
| 798 | fn test_prerequisite_not_exist_should_return_disabled_variation() { |