@@ -154,79 +154,84 @@ fn parse_kargs_toml(contents: &str, sys_arch: &str) -> Result<Vec<String>> {
154
154
Ok ( r)
155
155
}
156
156
157
- #[ test]
158
- /// Verify that kargs are only applied to supported architectures
159
- fn test_arch ( ) {
160
- // no arch specified, kargs ensure that kargs are applied unconditionally
161
- let sys_arch = "x86_64" ;
162
- let file_content = r##"kargs = ["console=tty0", "nosmt"]"## . to_string ( ) ;
163
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
164
- assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
165
- let sys_arch = "aarch64" ;
166
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
167
- assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
168
-
169
- // one arch matches and one doesn't, ensure that kargs are only applied for the matching arch
170
- let sys_arch = "aarch64" ;
171
- let file_content = r##"kargs = ["console=tty0", "nosmt"]
157
+ #[ cfg( test) ]
158
+ mod tests {
159
+ use super :: * ;
160
+
161
+ #[ test]
162
+ /// Verify that kargs are only applied to supported architectures
163
+ fn test_arch ( ) {
164
+ // no arch specified, kargs ensure that kargs are applied unconditionally
165
+ let sys_arch = "x86_64" ;
166
+ let file_content = r##"kargs = ["console=tty0", "nosmt"]"## . to_string ( ) ;
167
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
168
+ assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
169
+ let sys_arch = "aarch64" ;
170
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
171
+ assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
172
+
173
+ // one arch matches and one doesn't, ensure that kargs are only applied for the matching arch
174
+ let sys_arch = "aarch64" ;
175
+ let file_content = r##"kargs = ["console=tty0", "nosmt"]
172
176
match-architectures = ["x86_64"]
173
177
"##
174
- . to_string ( ) ;
175
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
176
- assert_eq ! ( parsed_kargs, [ ] as [ String ; 0 ] ) ;
177
- let file_content = r##"kargs = ["console=tty0", "nosmt"]
178
+ . to_string ( ) ;
179
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
180
+ assert_eq ! ( parsed_kargs, [ ] as [ String ; 0 ] ) ;
181
+ let file_content = r##"kargs = ["console=tty0", "nosmt"]
178
182
match-architectures = ["aarch64"]
179
183
"##
180
- . to_string ( ) ;
181
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
182
- assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
184
+ . to_string ( ) ;
185
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
186
+ assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
183
187
184
- // multiple arch specified, ensure that kargs are applied to both archs
185
- let sys_arch = "x86_64" ;
186
- let file_content = r##"kargs = ["console=tty0", "nosmt"]
188
+ // multiple arch specified, ensure that kargs are applied to both archs
189
+ let sys_arch = "x86_64" ;
190
+ let file_content = r##"kargs = ["console=tty0", "nosmt"]
187
191
match-architectures = ["x86_64", "aarch64"]
188
192
"##
189
- . to_string ( ) ;
190
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
191
- assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
192
- std:: env:: set_var ( "ARCH" , "aarch64" ) ;
193
- let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
194
- assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
195
- }
193
+ . to_string ( ) ;
194
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
195
+ assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
196
+ std:: env:: set_var ( "ARCH" , "aarch64" ) ;
197
+ let parsed_kargs = parse_kargs_toml ( & file_content, sys_arch) . unwrap ( ) ;
198
+ assert_eq ! ( parsed_kargs, [ "console=tty0" , "nosmt" ] ) ;
199
+ }
196
200
197
- #[ test]
198
- /// Verify some error cases
199
- fn test_invalid ( ) {
200
- let test_invalid_extra = r#"kargs = ["console=tty0", "nosmt"]\nfoo=bar"# ;
201
- assert ! ( parse_kargs_toml( test_invalid_extra, "x86_64" ) . is_err( ) ) ;
201
+ #[ test]
202
+ /// Verify some error cases
203
+ fn test_invalid ( ) {
204
+ let test_invalid_extra = r#"kargs = ["console=tty0", "nosmt"]\nfoo=bar"# ;
205
+ assert ! ( parse_kargs_toml( test_invalid_extra, "x86_64" ) . is_err( ) ) ;
202
206
203
- let test_missing = r#"foo=bar"# ;
204
- assert ! ( parse_kargs_toml( test_missing, "x86_64" ) . is_err( ) ) ;
205
- }
207
+ let test_missing = r#"foo=bar"# ;
208
+ assert ! ( parse_kargs_toml( test_missing, "x86_64" ) . is_err( ) ) ;
209
+ }
206
210
207
- #[ test]
208
- fn test_get_kargs_in_root ( ) -> Result < ( ) > {
209
- let td = cap_std_ext:: cap_tempfile:: TempDir :: new ( cap_std:: ambient_authority ( ) ) ?;
210
-
211
- // No directory
212
- assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
213
- // Empty directory
214
- td. create_dir_all ( "usr/lib/bootc/kargs.d" ) ?;
215
- assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
216
- // Non-toml file
217
- td. write ( "usr/lib/bootc/kargs.d/somegarbage" , "garbage" ) ?;
218
- assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
219
- td. write (
220
- "usr/lib/bootc/kargs.d/01-foo.toml" ,
221
- r##"kargs = ["console=tty0", "nosmt"]"## ,
222
- ) ?;
223
- td. write (
224
- "usr/lib/bootc/kargs.d/02-bar.toml" ,
225
- r##"kargs = ["console=ttyS1"]"## ,
226
- ) ?;
227
-
228
- let args = get_kargs_in_root ( & td, "x86_64" ) . unwrap ( ) ;
229
- similar_asserts:: assert_eq!( args, [ "console=tty0" , "nosmt" , "console=ttyS1" ] ) ;
230
-
231
- Ok ( ( ) )
211
+ #[ test]
212
+ fn test_get_kargs_in_root ( ) -> Result < ( ) > {
213
+ let td = cap_std_ext:: cap_tempfile:: TempDir :: new ( cap_std:: ambient_authority ( ) ) ?;
214
+
215
+ // No directory
216
+ assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
217
+ // Empty directory
218
+ td. create_dir_all ( "usr/lib/bootc/kargs.d" ) ?;
219
+ assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
220
+ // Non-toml file
221
+ td. write ( "usr/lib/bootc/kargs.d/somegarbage" , "garbage" ) ?;
222
+ assert_eq ! ( get_kargs_in_root( & td, "x86_64" ) . unwrap( ) . len( ) , 0 ) ;
223
+ td. write (
224
+ "usr/lib/bootc/kargs.d/01-foo.toml" ,
225
+ r##"kargs = ["console=tty0", "nosmt"]"## ,
226
+ ) ?;
227
+ td. write (
228
+ "usr/lib/bootc/kargs.d/02-bar.toml" ,
229
+ r##"kargs = ["console=ttyS1"]"## ,
230
+ ) ?;
231
+
232
+ let args = get_kargs_in_root ( & td, "x86_64" ) . unwrap ( ) ;
233
+ similar_asserts:: assert_eq!( args, [ "console=tty0" , "nosmt" , "console=ttyS1" ] ) ;
234
+
235
+ Ok ( ( ) )
236
+ }
232
237
}
0 commit comments