summaryrefslogtreecommitdiff
path: root/tests/depend.rs
blob: f459f776cb06c6d99fc64c40fdef1f3776a0cc7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use gentoo_utils::depend;
use mon::{eof, input::InputIter, tag, Parser};
use std::fs;

#[test]
fn parse_md5_cache() {
    let md5_cache = "/var/db/repos/gentoo/metadata/md5-cache";

    for cat in fs::read_dir(md5_cache).unwrap() {
        for pkg in fs::read_dir(cat.unwrap().path()).unwrap() {
            let metadata = fs::read_to_string(pkg.unwrap().path()).unwrap();

            for line in metadata.lines() {
                if line.starts_with("DEPEND=") {
                    depend::parsers::exprs()
                        .ignore()
                        .or(eof())
                        .preceded_by(tag("DEPEND="))
                        .check_finished(InputIter::new(line))
                        .unwrap();
                }
            }
        }
    }
}