use std::collections::BTreeMap;
pub fn file(name: &str) -> &'static [u8] {
lazy_static::lazy_static! {
static ref FILES: BTreeMap<&'static str, &'static [u8]> = {
let mut m: BTreeMap<&'static str, &'static [u8]> =
Default::default();
macro_rules! add {
( $key: expr, $path: expr ) => {
m.insert($key, include_bytes!($path))
}
}
include!(concat!(env!("OUT_DIR"), "/tests.index.rs.inc"));
assert!(m.contains_key("sexp/rsa-signature.sexp"));
m
};
}
FILES.get(name).unwrap_or_else(|| panic!("No such file {:?}", name))
}
#[allow(dead_code)]
pub fn key(name: &str) -> &'static [u8] {
file(&format!("keys/{}", name))
}
pub fn keybox(name: &str) -> &'static [u8] {
file(&format!("keyboxes/{}", name))
}
#[allow(dead_code)]
pub fn message(name: &str) -> &'static [u8] {
file(&format!("messages/{}", name))
}