use vantage_vista::{Condition, FilterOp, Vista, VistaQuery};
pub fn assert_dotted_path_is_refused(vista: &Vista, path: &str) {
let err = vista
.clone()
.with_condition(path, FilterOp::Eq, "A")
.unwrap_err();
assert!(err.is_unimplemented(), "{err:?}");
assert!(err.to_string().contains("dotted path"), "{err}");
let condition = Condition::new(path, FilterOp::Eq, "A");
let query = VistaQuery::new().with_condition(condition.clone());
let (narrowed, residual) = vista.clone().with_query(&query).unwrap();
assert_eq!(residual.conditions, vec![condition]);
assert!(narrowed.query().conditions.is_empty());
let unknown = vista
.clone()
.with_condition("no_such_column.leaf", FilterOp::Eq, "A")
.unwrap_err();
assert!(!unknown.is_unimplemented(), "{unknown:?}");
}