Remove integration test from code coverage
timw4mail/rusty-numbers/pipeline/head This commit looks good Details

This commit is contained in:
Timothy Warren 2020-03-05 22:12:00 -05:00
parent 34a1989925
commit 4ac9f7e888
1 changed files with 89 additions and 88 deletions

View File

@ -1,94 +1,95 @@
#![cfg_attr(tarpaulin, skip)] #[cfg_attr(tarpaulin, skip)]
mod tests {
use rusty_numbers::frac;
use rusty_numbers::rational::Frac;
use rusty_numbers::frac; #[test]
use rusty_numbers::rational::Frac; fn mul_test() {
let frac1 = frac!(1 / 3u8);
let frac2 = frac!(2u8 / 3);
#[test] let expected = frac!(2u8 / 9);
fn mul_test() {
let frac1 = frac!(1 / 3u8);
let frac2 = frac!(2u8 / 3);
let expected = frac!(2u8 / 9); assert_eq!(frac1 * frac2, expected);
assert_eq!(frac1 * frac2, expected); assert_eq!(frac!(0), frac!(0) * frac!(5 / 8));
}
assert_eq!(frac!(0), frac!(0) * frac!(5 / 8)); #[test]
} fn div_test() {
assert_eq!(frac!(1), frac!(1 / 3) / frac!(1 / 3));
#[test] assert_eq!(frac!(1 / 9), frac!(1 / 3) / frac!(3));
fn div_test() { }
assert_eq!(frac!(1), frac!(1 / 3) / frac!(1 / 3));
assert_eq!(frac!(1 / 9), frac!(1 / 3) / frac!(3)); #[test]
} fn add_test() {
assert_eq!(frac!(5 / 8), frac!(5 / 8) + frac!(0));
#[test] assert_eq!(frac!(5 / 6), frac!(1 / 3) + frac!(1 / 2), "1/3 + 1/2");
fn add_test() { assert_eq!(frac!(1 / 3), frac!(2 / 3) + -frac!(1 / 3), "2/3 + -1/3");
assert_eq!(frac!(5 / 8), frac!(5 / 8) + frac!(0)); }
assert_eq!(frac!(5 / 6), frac!(1 / 3) + frac!(1 / 2), "1/3 + 1/2");
assert_eq!(frac!(1 / 3), frac!(2 / 3) + -frac!(1 / 3), "2/3 + -1/3"); #[test]
} fn sub_test() {
assert_eq!(frac!(5 / 8), frac!(5 / 8) - frac!(0));
#[test] assert_eq!(frac!(1 / 6), frac!(1 / 2) - frac!(1 / 3), "1/2 - 1/3");
fn sub_test() { }
assert_eq!(frac!(5 / 8), frac!(5 / 8) - frac!(0));
assert_eq!(frac!(1 / 6), frac!(1 / 2) - frac!(1 / 3), "1/2 - 1/3"); #[test]
} fn cmp_test() {
assert!(frac!(1 / 2) <= frac!(1 / 2));
#[test] assert!(frac!(0) < frac!(1));
fn cmp_test() { assert!(-frac!(5 / 3) < frac!(1 / 10_000));
assert!(frac!(1 / 2) <= frac!(1 / 2)); assert!(frac!(1 / 10_000) > -frac!(10));
assert!(frac!(0) < frac!(1)); assert!(frac!(1 / 3) < frac!(1 / 2));
assert!(-frac!(5 / 3) < frac!(1 / 10_000)); assert_eq!(frac!(1 / 2), frac!(3 / 6));
assert!(frac!(1 / 10_000) > -frac!(10)); }
assert!(frac!(1 / 3) < frac!(1 / 2));
assert_eq!(frac!(1 / 2), frac!(3 / 6)); #[test]
} fn negative_fractions() {
assert_eq!(-frac!(1 / 3), -frac!(2 / 3) + frac!(1 / 3), "-2/3 + 1/3");
#[test] assert_eq!(frac!(1), frac!(1 / 3) - -frac!(2 / 3), "1/3 - -2/3");
fn negative_fractions() { assert_eq!(-frac!(1), -frac!(2 / 3) - frac!(1 / 3), "-2/3 - +1/3");
assert_eq!(-frac!(1 / 3), -frac!(2 / 3) + frac!(1 / 3), "-2/3 + 1/3"); assert_eq!(-frac!(1), -frac!(2 / 3) + -frac!(1 / 3), "-2/3 + -1/3");
assert_eq!(frac!(1), frac!(1 / 3) - -frac!(2 / 3), "1/3 - -2/3"); }
assert_eq!(-frac!(1), -frac!(2 / 3) - frac!(1 / 3), "-2/3 - +1/3");
assert_eq!(-frac!(1), -frac!(2 / 3) + -frac!(1 / 3), "-2/3 + -1/3"); #[test]
} fn negative_mul_div() {
assert_eq!(-frac!(1 / 12), -frac!(1 / 3) * frac!(1 / 4));
#[test] assert_eq!(-frac!(1 / 12), frac!(1 / 3) * -frac!(1 / 4));
fn negative_mul_div() { assert_eq!(frac!(1 / 12), -frac!(1 / 3) * -frac!(1 / 4));
assert_eq!(-frac!(1 / 12), -frac!(1 / 3) * frac!(1 / 4)); }
assert_eq!(-frac!(1 / 12), frac!(1 / 3) * -frac!(1 / 4));
assert_eq!(frac!(1 / 12), -frac!(1 / 3) * -frac!(1 / 4)); #[test]
} #[should_panic(expected = "Fraction can not have a zero denominator")]
fn zero_denom() {
#[test] frac!(1 / 0);
#[should_panic(expected = "Fraction can not have a zero denominator")] }
fn zero_denom() {
frac!(1 / 0); #[test]
} fn fraction_reducing() {
assert_eq!(frac!(1u8 / 2), Frac::new_unreduced(48u8, 96u8).reduce());
#[test] }
fn fraction_reducing() {
assert_eq!(frac!(1u8 / 2), Frac::new_unreduced(48u8, 96u8).reduce()); #[test]
} fn op_assign() {
// Addition
#[test] let mut quart = frac!(1 / 4);
fn op_assign() { quart += frac!(1 / 4);
// Addition assert_eq!(frac!(1 / 2), quart);
let mut quart = frac!(1 / 4);
quart += frac!(1 / 4); // Subtraction
assert_eq!(frac!(1 / 2), quart); let mut half = frac!(1 / 2);
half -= frac!(1 / 4);
// Subtraction assert_eq!(frac!(1 / 4), half);
let mut half = frac!(1 / 2);
half -= frac!(1 / 4); // Multiplication
assert_eq!(frac!(1 / 4), half); let mut half = frac!(1 / 2);
half *= frac!(1 / 2);
// Multiplication assert_eq!(frac!(1 / 4), half);
let mut half = frac!(1 / 2);
half *= frac!(1 / 2); // Division
assert_eq!(frac!(1 / 4), half); let mut quart = frac!(1 / 4);
quart /= frac!(4);
// Division assert_eq!(frac!(1 / 16), quart);
let mut quart = frac!(1 / 4); }
quart /= frac!(4);
assert_eq!(frac!(1 / 16), quart);
} }