use serde::Deserialize;
use smiles_parser::chain;
#[derive(Debug, Clone, Deserialize)]
struct WikidataItem {
pub item: String,
#[serde(rename = "itemLabel")]
pub item_label: String,
pub smiles: String,
}
#[test]
fn parse_wikidata_items() {
let contents = std::fs::read_to_string("./tests/wikidata_molecules.json").unwrap();
let items: Vec<WikidataItem> = serde_json::from_str(&contents).unwrap();
for item in items {
let res = chain(&item.smiles.as_bytes());
match res {
Ok(_) => {
}
Err(_) => {
println!("Failed to parse SMILES: {}", &item.smiles);
}
}
}
}