lb 0.6.0

A TUI library with ASCII/Unicode graphics.
Documentation
use lb::color;
use lb::img;
use lb::mat;
use lb::mat::Matrix;

#[test]
fn img_from_bytes() {
    let bytes = [
        0, 1, 2, //
        3, 4, 5, //
        6, 7, 8, //
    ];

    {
        let img = img::ImgVec::from_bytes(&bytes, (3, 1).into()).unwrap();

        let expected = [
            color::Rgb::new(0, 1, 2),
            color::Rgb::new(3, 4, 5),
            color::Rgb::new(6, 7, 8),
        ];

        assert_eq!(img.as_slice(), expected);
        assert_eq!(img.size(), (3, 1).into());
    }

    {
        let img = img::ImgVec::from_bytes(&bytes, (1, 3).into()).unwrap();

        let expected = [
            color::Rgb::new(0, 1, 2),
            color::Rgb::new(3, 4, 5),
            color::Rgb::new(6, 7, 8),
        ];

        assert_eq!(img.as_slice(), expected);
        assert_eq!(img.size(), (1, 3).into());
    }

    {
        let err = img::ImgVec::from_bytes(&bytes, (1, 1).into());

        assert_eq!(err, Err(mat::Error::InvalidSize));
    }
}