hyper_scripter_util/
lib.rs

1mod get_all_utils {
2    include!(concat!(env!("OUT_DIR"), "/get_all_utils.rs"));
3}
4
5pub use get_all_utils::{get_all, Util};
6
7#[cfg(test)]
8mod test {
9    use super::*;
10    #[test]
11    fn test_get_all() {
12        let utils: Vec<_> = get_all().into_iter().map(|u| *u).collect();
13        let comm = utils
14            .iter()
15            .find(|u| u.name == "util/common")
16            .expect("找不到應該存在的工具");
17        assert!(comm.is_hidden, "{:?} 有問題", comm);
18        assert_eq!(comm.ty, "rb", "{:?} 有問題", comm);
19        assert_eq!(include_str!("../util/common.rb"), comm.content);
20
21        let import = utils
22            .iter()
23            .find(|u| u.name == "util/import")
24            .expect("找不到應該存在的工具");
25        assert!(!import.is_hidden, "{:?} 有問題", import);
26        assert_eq!(import.ty, "rb", "{:?} 有問題", import);
27        assert_eq!(include_str!("../util/import.rb"), import.content);
28
29        assert_eq!(
30            None,
31            utils.iter().find(|u| u.name == "not-exist"),
32            "找到了不存在的工具"
33        );
34    }
35}