The equivalent of Jest for Rust.
Jrest is a testing framework project for Rust, inspired by Jest, easy to write and easy to read, with fancy diffs when tests fail.
⚠️ Be aware that this is a work in progress.
But it should get regular updates since I'm using it every week on my own open-source projects.
cargo add --dev jrest
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!("A &str").to_be("A &str");
expect!("A String".to_string()).to_be("A String".to_string());
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!(3).to_be_greater_than(2);
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!(3).to_be_greater_than_or_equal(2);
expect!(3).to_be_greater_than_or_equal(3);
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!(2).to_be_less_than(3);
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!(2).to_be_less_than_or_equal(3);
expect!(2).to_be_less_than_or_equal(2);
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!("cargo").to_end_with("go");
}
}
#[cfg(test)]
mod tests {
use jrest::expect;
#[test]
fn test_something() {
expect!("cargo").to_start_with("car");
}
}
-
.toContain()
-
.toHaveLength()
-
.toMatch()
-
.toMatchObject()
-
.toThrow()
- Tom Pridham for test-env-helpers inspiration.