Skip to content

Commit

Permalink
Merge pull request #113 from epage/multiline
Browse files Browse the repository at this point in the history
fix(tree): Indent items to clarify
  • Loading branch information
epage committed Oct 7, 2021
2 parents 451c25e + 85cbc52 commit 12c7ec8
Show file tree
Hide file tree
Showing 6 changed files with 59 additions and 6 deletions.
5 changes: 4 additions & 1 deletion crates/tree/Cargo.toml
Expand Up @@ -14,4 +14,7 @@ edition = "2018"

[dependencies]
predicates-core = { version = "1.0", path = "../core" }
treeline = "0.1"
termtree = "0.2"

[dev-dependencies]
predicates = { version = "2.0", path = "../.." }
48 changes: 48 additions & 0 deletions crates/tree/examples/failures.rs
@@ -0,0 +1,48 @@
use predicates::prelude::*;
use predicates_tree::CaseTreeExt;

fn main() {
let expected = 10;
let actual = 15;
let pred = predicates::ord::eq(expected);
if let Some(case) = pred.find_case(false, &actual) {
let tree = case.tree();
println!("{}", tree);
}

let expected = [1, 2, 3];
let actual = 15;
let pred = predicates::iter::in_iter(expected);
if let Some(case) = pred.find_case(false, &actual) {
let tree = case.tree();
println!("{}", tree);
}

let expected = "Hello
World!
Goodbye!";
let actual = "Hello
Moon!
Goodbye!";
let pred = predicates::ord::eq(expected);
if let Some(case) = pred.find_case(false, &actual) {
let tree = case.tree();
println!("{}", tree);
}

let expected = "Hello
World!
Goodbye!";
let actual = "Hello
Moon!
Goodbye!";
let pred = predicates::str::diff(expected);
if let Some(case) = pred.find_case(false, actual) {
let tree = case.tree();
println!("{}", tree);
}
}
6 changes: 3 additions & 3 deletions crates/tree/src/lib.rs
Expand Up @@ -24,21 +24,21 @@ impl<'a> CaseTreeExt for reflection::Case<'a> {
}
}

type CaseTreeInner = treeline::Tree<Box<dyn fmt::Display + Send + Sync>>;
type CaseTreeInner = termtree::Tree<Box<dyn fmt::Display + Send + Sync>>;

fn convert(case: &reflection::Case<'_>) -> CaseTreeInner {
let mut leaves: Vec<CaseTreeInner> = vec![];

leaves.extend(case.predicate().iter().flat_map(|pred| {
pred.parameters().map(|item| {
let root: Box<dyn fmt::Display + Send + Sync> = Box::new(item.to_string());
treeline::Tree::new(root, vec![])
termtree::Tree::new(root, vec![]).with_multiline(true)
})
}));

leaves.extend(case.products().map(|item| {
let root: Box<dyn fmt::Display + Send + Sync> = Box::new(item.to_string());
treeline::Tree::new(root, vec![])
termtree::Tree::new(root, vec![]).with_multiline(true)
}));

leaves.extend(case.children().map(|item| convert(item)));
Expand Down
4 changes: 2 additions & 2 deletions src/function.rs
Expand Up @@ -137,6 +137,6 @@ where
#[test]
fn str_function() {
let f = function(|x: &str| x == "hello");
assert!(f.eval(&"hello"));
assert!(!f.eval(&"goodbye"));
assert!(f.eval("hello"));
assert!(!f.eval("goodbye"));
}
1 change: 1 addition & 0 deletions src/path/fc.rs
Expand Up @@ -106,6 +106,7 @@ where
/// assert_eq!(true, predicate_fn.eval(Path::new("./tests/hello_world")));
/// assert_eq!(false, predicate_fn.eval(Path::new("./tests/empty_file")));
/// ```
#[allow(clippy::wrong_self_convention)]
fn from_file_path(self) -> FileContentPredicate<Self> {
FileContentPredicate { p: self }
}
Expand Down
1 change: 1 addition & 0 deletions src/str/adapters.rs
Expand Up @@ -175,6 +175,7 @@ where
/// let variable: &[u8] = b"";
/// assert_eq!(false, predicate_fn.eval(variable));
/// ```
#[allow(clippy::wrong_self_convention)]
fn from_utf8(self) -> Utf8Predicate<Self> {
Utf8Predicate { p: self }
}
Expand Down

0 comments on commit 12c7ec8

Please sign in to comment.