brace-expand 0.1.0

Rust crate which performs brace expansion of strings, as in shells like Bash etc.
Documentation
use super::*;

#[test]
fn simple_expansion_in_middle_of_string_works() {
    let output = brace_expand("a{b,c}d");

    assert_eq!(output, vec!["abd", "acd"]);
}

#[test]
fn nested_expansion_works() {
    let output = brace_expand("{a,b}c{e,f{g,h}}");

    assert_eq!(output, vec!["ace", "acfg", "acfh", "bce", "bcfg", "bcfh"]);
}

#[test]
fn empty_terms_work() {
    let output = brace_expand("a{,b,,c,}d");

    assert_eq!(output, vec!["ad", "abd", "ad", "acd", "ad"]);
}

#[test]
fn escaping_commas_works() {
    let output = brace_expand("{a\\,,b\\,}c");

    assert_eq!(output, vec!["a,c", "b,c"]);
}

#[test]
fn escaping_braces_works() {
    let output = brace_expand("{\\{a,b\\},c}d");

    assert_eq!(output, vec!["{ad", "b}d", "cd"]);
}

#[test]
fn escaping_backslashes_works() {
    let output = brace_expand("{\\\\{a,b\\\\},c}d");

    assert_eq!(output, vec!["\\ad", "\\b\\d", "cd"]);
}