@@ -15,6 +15,12 @@ fn test_from_vec() {
15
15
assert ( head ( tail ( tail ( l) ) ) == 2 ) ;
16
16
}
17
17
18
+ #[ test]
19
+ fn test_from_vec_empty ( ) {
20
+ let empty : list:: list < int > = from_vec ( [ ] ) ;
21
+ assert ( empty == list:: nil :: < int > ) ;
22
+ }
23
+
18
24
#[ test]
19
25
fn test_from_vec_mut ( ) {
20
26
let l = from_vec ( [ mutable 0 , 1 , 2 ] ) ;
@@ -25,10 +31,11 @@ fn test_from_vec_mut() {
25
31
26
32
#[ test]
27
33
fn test_foldl ( ) {
28
- let l = from_vec ( [ 0 , 1 , 2 , 3 , 4 ] ) ;
29
34
fn add ( & & a: uint , & & b: int ) -> uint { ret a + ( b as uint ) ; }
30
- let rs = list:: foldl ( l, 0 u, add) ;
31
- assert ( rs == 10 u) ;
35
+ let l = from_vec ( [ 0 , 1 , 2 , 3 , 4 ] ) ;
36
+ let empty = list:: nil :: < int > ;
37
+ assert ( list:: foldl ( l, 0 u, add) == 10 u) ;
38
+ assert ( list:: foldl ( empty, 0 u, add) == 0 u) ;
32
39
}
33
40
34
41
#[ test]
@@ -37,26 +44,25 @@ fn test_foldl2() {
37
44
a - b
38
45
}
39
46
let l = from_vec ( [ 1 , 2 , 3 , 4 ] ) ;
40
- let sum = list:: foldl ( l, 0 , sub) ;
41
- assert sum == -10 ;
47
+ assert ( list:: foldl ( l, 0 , sub) == -10 ) ;
42
48
}
43
49
44
50
#[ test]
45
51
fn test_find_success ( ) {
46
- let l = from_vec ( [ 0 , 1 , 2 ] ) ;
47
52
fn match ( & & i: int ) -> option:: t < int > {
48
53
ret if i == 2 { option:: some ( i) } else { option:: none :: < int > } ;
49
54
}
50
- let rs = list :: find ( l , match ) ;
51
- assert ( rs == option:: some ( 2 ) ) ;
55
+ let l = from_vec ( [ 0 , 1 , 2 ] ) ;
56
+ assert ( list :: find ( l , match ) == option:: some ( 2 ) ) ;
52
57
}
53
58
54
59
#[ test]
55
60
fn test_find_fail ( ) {
56
- let l = from_vec ( [ 0 , 1 , 2 ] ) ;
57
61
fn match ( & & _i: int ) -> option:: t < int > { ret option:: none :: < int > ; }
58
- let rs = list:: find ( l, match ) ;
59
- assert ( rs == option:: none :: < int > ) ;
62
+ let l = from_vec ( [ 0 , 1 , 2 ] ) ;
63
+ let empty = list:: nil :: < int > ;
64
+ assert ( list:: find ( l, match ) == option:: none :: < int > ) ;
65
+ assert ( list:: find ( empty, match ) == option:: none :: < int > ) ;
60
66
}
61
67
62
68
#[ test]
@@ -72,6 +78,8 @@ fn test_has() {
72
78
#[ test]
73
79
fn test_len ( ) {
74
80
let l = from_vec ( [ 0 , 1 , 2 ] ) ;
81
+ let empty = list:: nil :: < int > ;
75
82
assert ( list:: len ( l) == 3 u) ;
83
+ assert ( list:: len ( empty) == 0 u) ;
76
84
}
77
85
0 commit comments