File tree 1 file changed +22
-0
lines changed
1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -314,4 +314,26 @@ mod tests {
314
314
assert_eq ! ( expected, read_ec_version( & data, false ) ) ;
315
315
assert_eq ! ( expected, read_ec_version( & data, true ) ) ;
316
316
}
317
+
318
+ #[ test]
319
+ // Make sure it doesn't crash when reading an invalid binary
320
+ // Cargo.toml is significantly smaller than ec.bin
321
+ fn fails_cargo_toml ( ) {
322
+ let mut ec_bin_path = PathBuf :: from ( env ! ( "CARGO_MANIFEST_DIR" ) ) ;
323
+ ec_bin_path. push ( "Cargo.toml" ) ;
324
+ let data = fs:: read ( ec_bin_path) . unwrap ( ) ;
325
+ assert_eq ! ( None , read_ec_version( & data, false ) ) ;
326
+ assert_eq ! ( None , read_ec_version( & data, true ) ) ;
327
+ }
328
+
329
+ #[ test]
330
+ // Make sure it doesn't crash when reading an invalid binary
331
+ // winux.bin is slightly larger than ec.bin
332
+ fn fails_winux ( ) {
333
+ let mut ec_bin_path = PathBuf :: from ( env ! ( "CARGO_MANIFEST_DIR" ) ) ;
334
+ ec_bin_path. push ( "test_bins/winux.bin" ) ;
335
+ let data = fs:: read ( ec_bin_path) . unwrap ( ) ;
336
+ assert_eq ! ( None , read_ec_version( & data, false ) ) ;
337
+ assert_eq ! ( None , read_ec_version( & data, true ) ) ;
338
+ }
317
339
}
You can’t perform that action at this time.
0 commit comments