//! Tests for the crate's APIs. use crate::label::Label; use crate::parse::*; use crate::storage::Storage; use crate::tag::KeyValueSep; use crate::tag::PathSep; use crate::tag::Tag; use crate::tag::TagKind; use crate::TagManager; use anyhow::anyhow as err; use anyhow::Result; use string_interner::Symbol; // Helper function to test that a tag that's parsed and then resolved // back into a string results in the same string that was originally // put into the manager. fn test_roundtrip(manager: &TagManager, input: &str) -> Result<()> where L: Label, S: Symbol, T: Tag