Import data and check consistency
This commit is contained in:
parent
1ea09a9be9
commit
f6bcb39c52
2 changed files with 22 additions and 0 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
mod ingest;
|
mod ingest;
|
||||||
mod data;
|
mod data;
|
||||||
|
mod test;
|
||||||
|
|
||||||
use std::io;
|
use std::io;
|
||||||
|
|
||||||
|
|
@ -9,10 +10,13 @@ use clap::Parser;
|
||||||
enum Command {
|
enum Command {
|
||||||
/// Read sift data on stdin and output brood data on stdout.
|
/// Read sift data on stdin and output brood data on stdout.
|
||||||
Ingest,
|
Ingest,
|
||||||
|
/// Test various things
|
||||||
|
Test,
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() -> io::Result<()> {
|
fn main() -> io::Result<()> {
|
||||||
match Command::parse() {
|
match Command::parse() {
|
||||||
Command::Ingest => ingest::ingest(),
|
Command::Ingest => ingest::ingest(),
|
||||||
|
Command::Test => test::test(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
18
brood/src/test.rs
Normal file
18
brood/src/test.rs
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
use std::io::{self, BufReader};
|
||||||
|
|
||||||
|
use crate::data::AdjacencyList;
|
||||||
|
|
||||||
|
pub fn test() -> io::Result<()> {
|
||||||
|
eprintln!("IMPORT");
|
||||||
|
let data: AdjacencyList = ciborium::de::from_reader(BufReader::new(io::stdin())).unwrap();
|
||||||
|
|
||||||
|
eprintln!("CONSISTENCY CHECK");
|
||||||
|
let range = 0..data.pages.len() as u32;
|
||||||
|
for link in &data.links {
|
||||||
|
if !range.contains(&link.to) {
|
||||||
|
eprintln!("Invalid link detected!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue