forked from gentoo-utils/gentoo-utils
29 lines
960 B
Rust
29 lines
960 B
Rust
use gentoo_utils::{Parseable, atom::Atom, ebuild::Depend};
|
|
use mon::{Parser, eof, input::InputIter, tag, whitespace1};
|
|
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=") {
|
|
eprintln!("{line}");
|
|
eprintln!();
|
|
Depend::<Atom>::parser()
|
|
.separated_list(whitespace1(), 0..)
|
|
.ignore()
|
|
.or(eof())
|
|
.preceded_by(tag("DEPEND="))
|
|
.check_finished(InputIter::new(line))
|
|
.unwrap();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|