@@ -2,8 +2,7 @@ use rustell::*;
2
2
3
3
#[ test]
4
4
fn test_parser ( ) {
5
- let src = "use std::io::Read;" ;
6
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
5
+ let lhs = "use std::io::Read;" ;
7
6
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
8
7
module: "std" ,
9
8
rename: None ,
@@ -17,13 +16,13 @@ fn test_parser() {
17
16
} ) ) ,
18
17
} ) ) ,
19
18
} ) ] ;
20
- assert_eq ! ( lhs, rhs)
19
+ assert_eq ! ( parse( lhs) , rhs) ;
20
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
21
21
}
22
22
23
23
#[ test]
24
24
fn test_parser_many ( ) {
25
- let src = "use std::{io::Read, fs::File};" ;
26
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
25
+ let lhs = "use std::{io::Read, fs::File};" ;
27
26
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
28
27
module: "std" ,
29
28
rename: None ,
@@ -48,13 +47,13 @@ fn test_parser_many() {
48
47
} ,
49
48
] ) ) ) ,
50
49
} ) ] ;
51
- assert_eq ! ( lhs, rhs) ;
50
+ assert_eq ! ( parse( lhs) , rhs) ;
51
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
52
52
}
53
53
54
54
#[ test]
55
55
fn test_parser_glob ( ) {
56
- let src = "use std::io::*;" ;
57
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
56
+ let lhs = "use std::io::*;" ;
58
57
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
59
58
module: "std" ,
60
59
rename: None ,
@@ -64,13 +63,13 @@ fn test_parser_glob() {
64
63
nested: Some ( Box :: new( ExprUse :: Glob ) ) ,
65
64
} ) ) ,
66
65
} ) ] ;
67
- assert_eq ! ( lhs, rhs)
66
+ assert_eq ! ( parse( lhs) , rhs) ;
67
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
68
68
}
69
69
70
70
#[ test]
71
71
fn test_parser_rename ( ) {
72
- let src = "use std::io::Read as Readable;" ;
73
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
72
+ let lhs = "use std::io::Read as Readable;" ;
74
73
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
75
74
module: "std" ,
76
75
rename: None ,
@@ -84,13 +83,13 @@ fn test_parser_rename() {
84
83
} ) ) ,
85
84
} ) ) ,
86
85
} ) ] ;
87
- assert_eq ! ( lhs, rhs)
86
+ assert_eq ! ( parse( lhs) , rhs) ;
87
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
88
88
}
89
89
90
90
#[ test]
91
91
fn test_parser_complex ( ) {
92
- let src = "use std::{io::Read as Readable, fs::*};" ;
93
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
92
+ let lhs = "use std::{io::Read as Readable, fs::*};" ;
94
93
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
95
94
module: "std" ,
96
95
rename: None ,
@@ -111,13 +110,13 @@ fn test_parser_complex() {
111
110
} ,
112
111
] ) ) ) ,
113
112
} ) ] ;
114
- assert_eq ! ( lhs, rhs)
113
+ assert_eq ! ( parse( lhs) , rhs) ;
114
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
115
115
}
116
116
117
117
#[ test]
118
118
fn test_parser_crate ( ) {
119
- let src = "use crate::module::Type;" ;
120
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
119
+ let lhs = "use crate::module::Type;" ;
121
120
let rhs = vec ! [ Expr :: Use ( ExprUse :: Item {
122
121
module: "crate" ,
123
122
rename: None ,
@@ -131,17 +130,17 @@ fn test_parser_crate() {
131
130
} ) ) ,
132
131
} ) ) ,
133
132
} ) ] ;
134
- assert_eq ! ( lhs, rhs)
133
+ assert_eq ! ( parse( lhs) , rhs) ;
134
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
135
135
}
136
136
137
137
#[ test]
138
138
fn test_parser_other_then_use ( ) {
139
- let src = r#"
139
+ let lhs = r#"
140
140
fn test() {
141
141
println!("Hello");
142
142
}
143
143
use crate::module::Type;"# ;
144
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
145
144
let rhs = vec ! [
146
145
Expr :: Other (
147
146
r#"
@@ -164,16 +163,16 @@ fn test_parser_other_then_use() {
164
163
} ) ) ,
165
164
} ) ,
166
165
] ;
167
- assert_eq ! ( lhs, rhs)
166
+ assert_eq ! ( parse( lhs) , rhs) ;
167
+ // assert_eq!(parse(&sloppy(lhs)), rhs)
168
168
}
169
169
170
170
#[ test]
171
171
fn test_parser_multiple ( ) {
172
- let src = r#"
172
+ let lhs = r#"
173
173
use std::io;
174
174
use std::fs;
175
175
"# ;
176
- let lhs = expr ( ) . parse ( src) . into_result ( ) . unwrap ( ) ;
177
176
let rhs = vec ! [
178
177
Expr :: Other ( "\n " ) ,
179
178
Expr :: Use ( ExprUse :: Item {
@@ -197,7 +196,8 @@ fn test_parser_multiple() {
197
196
} ) ,
198
197
Expr :: Other ( "\n " ) ,
199
198
] ;
200
- assert_eq ! ( lhs, rhs)
199
+ assert_eq ! ( parse( lhs) , rhs) ;
200
+ assert_eq ! ( parse( & sloppy( lhs) ) , rhs)
201
201
}
202
202
203
203
#[ test]
@@ -312,3 +312,11 @@ fn test_parser_mixed_all_cases() {
312
312
] ;
313
313
assert_eq ! ( lhs, rhs)
314
314
}
315
+
316
+ fn sloppy ( src : & str ) -> String {
317
+ src. replace ( ";" , "" )
318
+ }
319
+
320
+ fn parse ( src : & str ) -> Vec < Expr > {
321
+ expr ( ) . parse ( src) . into_result ( ) . unwrap ( )
322
+ }
0 commit comments