Sha256: 16ce9bafa17d969a4c1828a144a60cbb75918cb8bfa15ca2da5ea2bddb89206e

Contents?: true

Size: 1.23 KB

Versions: 59

Compression:

Stored size: 1.23 KB

Contents

extern crate perfect_numbers;

use perfect_numbers::{Classification, classify};

macro_rules! tests {
    ($property_test_func:ident {
        $( $(#[$attr:meta])* $test_name:ident( $( $param:expr ),* ); )+
    }) => {
        $(
            $(#[$attr])*
            #[test]
            fn $test_name() {
                $property_test_func($( $param ),* )
            }
        )+
    }
}

fn test_classification(num: u64, result: Classification) {
    assert_eq!(classify(num), Some(result));
}

#[test]
fn basic() {
    assert_eq!(classify(0), None);
}


tests! {
    test_classification {
        #[ignore] test_1(1, Classification::Deficient);
        #[ignore] test_2(2, Classification::Deficient);
        #[ignore] test_4(4, Classification::Deficient);
        #[ignore] test_6(6, Classification::Perfect);
        #[ignore] test_12(12, Classification::Abundant);
        #[ignore] test_28(28, Classification::Perfect);
        #[ignore] test_30(30, Classification::Abundant);
        #[ignore] test_32(32, Classification::Deficient);
        #[ignore] test_33550335(33550335, Classification::Abundant);
        #[ignore] test_33550336(33550336, Classification::Perfect);
        #[ignore] test_33550337(33550337, Classification::Deficient);
    }
}

Version data entries

59 entries across 59 versions & 1 rubygems

Version Path
trackler-2.2.1.171 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.170 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.169 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.167 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.166 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.165 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.164 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.163 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.162 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.161 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.160 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.159 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.158 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.157 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.156 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.155 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.154 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.153 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.152 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs
trackler-2.2.1.151 tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs