add3/
lib.rs

1pub struct Adder { amount: i64 }
2
3impl Adder {
4    pub fn new() -> Adder { Adder { amount: 3 } }
5    pub fn add(&self, x: i64) -> i64 { x + self.amount }
6}
7
8pub fn add3(x: i64) -> i64 {
9    x + 3
10}
11
12#[test]
13#[allow(non_snake_case)]
14fn it_works__0() { assert_eq!(add3( 0),  3); }
15#[test]
16fn it_works_14() { assert_eq!(add3(14), 17); }
17#[test]
18fn it_works_n1() { assert_eq!(add3(-1),  2); }
19#[test]
20fn it_works_64bit() {
21    assert_eq!(add3(::std::u32::MAX as i64), ::std::u32::MAX as i64 + 3);
22}
23
24#[test]
25fn meth_works_0() {  assert_eq!(Adder::new().add( 0),  3); }
26#[test]
27fn meth_works_13() { assert_eq!(Adder::new().add(14), 17); }
28#[test]
29fn meth_works_n1() { assert_eq!(Adder::new().add(-1),  2); }