animal_time/
lib.rs

1pub fn now() -> String {
2    let minutes = std::time::SystemTime::now()
3        .duration_since(std::time::UNIX_EPOCH)
4        .unwrap()
5        .as_secs()
6        / 60;
7    let animal = minutes % (60 * 24); // minute of the day
8    let adjective = (minutes / (60 * 24)) - 19022; // day number
9    format!(
10        "{}-{}",
11        include_str!("adjectives.txt")
12            .split('\n')
13            .nth(adjective as usize)
14            .unwrap(),
15        include_str!("animals.txt")
16            .split('\n')
17            .nth(animal as usize)
18            .unwrap()
19    )
20}
21
22#[cfg(test)]
23mod tests {
24    #[test]
25    fn it_works() {
26        assert_eq!(super::now().split('-').collect::<Vec<&str>>().len(), 2);
27    }
28}