vinegar 0.1.0

A collection of functions and macros to help testing Rust code
Documentation
# Vinegar

A collection of functions and macros to help testing Rust code.

## Macros

* `expect` checks a boolean condition, similar to `assert`.
* `expect_eq` checks two values for equality, similar to `assert_eq`.

## Functions

* `fn check<I>(expects: I) where I: IntoIterator<Item=Result<(), String>>`

Takes a collection of `Result<(), String>`, which happens to be the type of values
 returned by the expectation macros.

So, the `check` function is, basically, meant to check the assertions made with 
the `expect` macros.

## Usage

Example usage:

```rust
use vinegar::check;

#[test]
fn use_check() {
    // simple test: just check some expectations:
    check(vec![
        expect_eq!(2 + 2, 4),
        expect!(2 + 2 == 4),
        expect_eq!("hi", "hi"),
    ]);

    // simple example-based test
    let examples = [1, 2, 3, ];

    check(examples.iter().map(|&ex| expect!(ex > 0)));

    // example-based test with both input and assertion as examples
    let examples = vec![
        // (input, expected result)
        (1, 2),
        (2, 4),
        (3, 6),
    ];

    check(examples.iter().map(|&(input, expected)| {
        let result = input * 2;
        expect_eq!(result, expected)
    }));
}
```