@@ -18,6 +18,7 @@ use cargo::core::global_cache_tracker::{self, DeferredGlobalLastUse, GlobalCache
18
18
use cargo:: util:: cache_lock:: CacheLockMode ;
19
19
use cargo:: util:: interning:: InternedString ;
20
20
use cargo:: GlobalContext ;
21
+ use cargo_test_support:: compare:: assert_e2e;
21
22
use cargo_test_support:: paths;
22
23
use cargo_test_support:: prelude:: * ;
23
24
use cargo_test_support:: registry:: { Package , RegistryBuilder } ;
@@ -749,7 +750,6 @@ fn both_git_and_http_index_cleans() {
749
750
drop ( lock) ;
750
751
}
751
752
752
- #[ expect( deprecated) ]
753
753
#[ cargo_test]
754
754
fn clean_gc_dry_run ( ) {
755
755
// Basic `clean --gc --dry-run` test.
@@ -772,16 +772,19 @@ fn clean_gc_dry_run() {
772
772
let index = glob_registry ( "index" ) . ls_r ( ) ;
773
773
let src = glob_registry ( "src" ) . ls_r ( ) ;
774
774
let cache = glob_registry ( "cache" ) . ls_r ( ) ;
775
- let expected_files = index
775
+ let mut expected_files = index
776
776
. iter ( )
777
777
. chain ( src. iter ( ) )
778
778
. chain ( cache. iter ( ) )
779
779
. map ( |p| p. to_str ( ) . unwrap ( ) )
780
780
. join ( "\n " ) ;
781
+ expected_files. push_str ( "\n " ) ;
782
+ let expected_files = snapbox:: filter:: normalize_paths ( & expected_files) ;
783
+ let expected_files = assert_e2e ( ) . redactions ( ) . redact ( & expected_files) ;
781
784
782
785
p. cargo ( "clean gc --dry-run -v -Zgc" )
783
786
. masquerade_as_nightly_cargo ( & [ "gc" ] )
784
- . with_stdout_unordered ( & expected_files)
787
+ . with_stdout_data ( expected_files. as_str ( ) . unordered ( ) )
785
788
. with_stderr_data ( str![ [ r#"
786
789
[SUMMARY] [FILE_NUM] files, [FILE_SIZE]B total
787
790
[WARNING] no files deleted due to --dry-run
@@ -792,7 +795,7 @@ fn clean_gc_dry_run() {
792
795
// Again, make sure the information is still tracked.
793
796
p. cargo ( "clean gc --dry-run -v -Zgc" )
794
797
. masquerade_as_nightly_cargo ( & [ "gc" ] )
795
- . with_stdout_unordered ( & expected_files)
798
+ . with_stdout_data ( expected_files. as_str ( ) . unordered ( ) )
796
799
. with_stderr_data ( str![ [ r#"
797
800
[SUMMARY] [FILE_NUM] files, [FILE_SIZE]B total
798
801
[WARNING] no files deleted due to --dry-run
@@ -895,7 +898,6 @@ fn tracks_sizes() {
895
898
assert ! ( db_sizes[ 1 ] > 26000 ) ;
896
899
}
897
900
898
- #[ expect( deprecated) ]
899
901
#[ cargo_test]
900
902
fn max_size ( ) {
901
903
// Checks --max-crate-size and --max-src-size with various cleaning thresholds.
@@ -924,20 +926,20 @@ fn max_size() {
924
926
. collect ( ) ;
925
927
926
928
// This exercises the different boundary conditions.
927
- for ( clean_size, files, bytes ) in [
928
- ( 22 , 0 , 0 ) ,
929
- ( 21 , 1 , 6 ) ,
930
- ( 16 , 1 , 6 ) ,
931
- ( 15 , 2 , 8 ) ,
932
- ( 14 , 2 , 8 ) ,
933
- ( 13 , 3 , 9 ) ,
934
- ( 12 , 4 , 12 ) ,
935
- ( 10 , 4 , 12 ) ,
936
- ( 9 , 5 , 16 ) ,
937
- ( 6 , 5 , 16 ) ,
938
- ( 5 , 6 , 21 ) ,
939
- ( 1 , 6 , 21 ) ,
940
- ( 0 , 7 , 22 ) ,
929
+ for ( clean_size, files) in [
930
+ ( 22 , 0 ) ,
931
+ ( 21 , 1 ) ,
932
+ ( 16 , 1 ) ,
933
+ ( 15 , 2 ) ,
934
+ ( 14 , 2 ) ,
935
+ ( 13 , 3 ) ,
936
+ ( 12 , 4 ) ,
937
+ ( 10 , 4 ) ,
938
+ ( 9 , 5 ) ,
939
+ ( 6 , 5 ) ,
940
+ ( 5 , 6 ) ,
941
+ ( 1 , 6 ) ,
942
+ ( 0 , 7 ) ,
941
943
] {
942
944
let ( removed, kept) = names_by_timestamp. split_at ( files) ;
943
945
// --max-crate-size
@@ -947,19 +949,21 @@ fn max_size() {
947
949
writeln ! ( stderr, "[REMOVING] [..]{name}.crate" ) . unwrap ( ) ;
948
950
}
949
951
let total_display = if removed. is_empty ( ) {
950
- String :: new ( )
952
+ ""
951
953
} else {
952
- format ! ( ", {bytes} B total" )
954
+ ", [FILE_SIZE] B total"
953
955
} ;
954
- let files_display = if files == 1 {
955
- format ! ( "1 file" )
956
+ let files_display = if files == 0 {
957
+ "0 files"
958
+ } else if files == 1 {
959
+ "1 file"
956
960
} else {
957
- format ! ( "{files} files")
961
+ "[FILE_NUM] files"
958
962
} ;
959
- write ! ( stderr, "[REMOVED] {files_display}{total_display}" ) . unwrap ( ) ;
963
+ writeln ! ( stderr, "[REMOVED] {files_display}{total_display}" ) . unwrap ( ) ;
960
964
cargo_process ( & format ! ( "clean gc -Zgc -v --max-crate-size={clean_size}" ) )
961
965
. masquerade_as_nightly_cargo ( & [ "gc" ] )
962
- . with_stderr_unordered ( & stderr)
966
+ . with_stderr_data ( stderr. unordered ( ) )
963
967
. run ( ) ;
964
968
for name in kept {
965
969
assert ! ( cache_dir. join( format!( "{name}.crate" ) ) . exists( ) ) ;
@@ -974,15 +978,15 @@ fn max_size() {
974
978
for name in removed {
975
979
writeln ! ( stderr, "[REMOVING] [..]{name}" ) . unwrap ( ) ;
976
980
}
977
- let total_display = if files == 0 {
978
- String :: new ( )
981
+ let total_display = if removed . is_empty ( ) {
982
+ ""
979
983
} else {
980
- format ! ( ", {bytes} B total" )
984
+ ", [FILE_SIZE] B total"
981
985
} ;
982
- write ! ( stderr, "[REMOVED] {files_display}{total_display}" ) . unwrap ( ) ;
986
+ writeln ! ( stderr, "[REMOVED] {files_display}{total_display}" ) . unwrap ( ) ;
983
987
cargo_process ( & format ! ( "clean gc -Zgc -v --max-src-size={clean_size}" ) )
984
988
. masquerade_as_nightly_cargo ( & [ "gc" ] )
985
- . with_stderr_unordered ( & stderr)
989
+ . with_stderr_data ( stderr. unordered ( ) )
986
990
. run ( ) ;
987
991
for name in kept {
988
992
assert ! ( src_dir. join( name) . exists( ) ) ;
@@ -1122,7 +1126,6 @@ fn max_size_untracked_src_from_clean() {
1122
1126
max_size_untracked_verify ( & gctx) ;
1123
1127
}
1124
1128
1125
- #[ expect( deprecated) ]
1126
1129
#[ cargo_test]
1127
1130
fn max_download_size ( ) {
1128
1131
// --max-download-size
@@ -1140,13 +1143,13 @@ fn max_download_size() {
1140
1143
( "b-1.0.0" , 1 , 1 , 7 ) ,
1141
1144
] ;
1142
1145
1143
- for ( max_size, num_deleted, files_deleted, bytes ) in [
1144
- ( 30 , 0 , 0 , 0 ) ,
1145
- ( 29 , 1 , 1 , 5 ) ,
1146
- ( 24 , 2 , 2 , 9 ) ,
1147
- ( 20 , 3 , 3 , 12 ) ,
1148
- ( 1 , 7 , 7 , 29 ) ,
1149
- ( 0 , 8 , 8 , 30 ) ,
1146
+ for ( max_size, num_deleted, files_deleted) in [
1147
+ ( 30 , 0 , 0 ) ,
1148
+ ( 29 , 1 , 1 ) ,
1149
+ ( 24 , 2 , 2 ) ,
1150
+ ( 20 , 3 , 3 ) ,
1151
+ ( 1 , 7 , 7 ) ,
1152
+ ( 0 , 8 , 8 ) ,
1150
1153
] {
1151
1154
populate_cache ( & gctx, & test_crates) ;
1152
1155
// Determine the order things will be deleted.
@@ -1159,20 +1162,22 @@ fn max_download_size() {
1159
1162
for name in removed {
1160
1163
writeln ! ( stderr, "[REMOVING] [..]{name}" ) . unwrap ( ) ;
1161
1164
}
1162
- let files_display = if files_deleted == 1 {
1163
- format ! ( "1 file" )
1165
+ let files_display = if files_deleted == 0 {
1166
+ "0 files"
1167
+ } else if files_deleted == 1 {
1168
+ "1 file"
1164
1169
} else {
1165
- format ! ( "{files_deleted} files")
1170
+ "[FILE_NUM] files"
1166
1171
} ;
1167
1172
let total_display = if removed. is_empty ( ) {
1168
- String :: new ( )
1173
+ ""
1169
1174
} else {
1170
- format ! ( ", {bytes} B total" )
1175
+ ", [FILE_SIZE] B total"
1171
1176
} ;
1172
- write ! ( stderr, "[REMOVED] {files_display}{total_display}" , ) . unwrap ( ) ;
1177
+ writeln ! ( stderr, "[REMOVED] {files_display}{total_display}" , ) . unwrap ( ) ;
1173
1178
cargo_process ( & format ! ( "clean gc -Zgc -v --max-download-size={max_size}" ) )
1174
1179
. masquerade_as_nightly_cargo ( & [ "gc" ] )
1175
- . with_stderr_unordered ( & stderr)
1180
+ . with_stderr_data ( stderr. unordered ( ) )
1176
1181
. run ( ) ;
1177
1182
}
1178
1183
}
@@ -1683,7 +1688,6 @@ fn clean_max_src_crate_age() {
1683
1688
. run ( ) ;
1684
1689
}
1685
1690
1686
- #[ expect( deprecated) ]
1687
1691
#[ cargo_test]
1688
1692
fn clean_max_git_size ( ) {
1689
1693
// clean --max-git-size
@@ -1767,13 +1771,16 @@ fn clean_max_git_size() {
1767
1771
// And then try cleaning everything.
1768
1772
p. cargo ( "clean gc --max-git-size=0 -Zgc -v" )
1769
1773
. masquerade_as_nightly_cargo ( & [ "gc" ] )
1770
- . with_stderr_unordered ( & format ! (
1771
- "\
1772
- [REMOVING] [ROOT]/home/.cargo/git/checkouts/{db_name}/{second_co_name}
1773
- [REMOVING] [ROOT]/home/.cargo/git/db/{db_name}
1774
+ . with_stderr_data (
1775
+ format ! (
1776
+ "\
1777
+ [REMOVING] [ROOT]/home/.cargo/git/checkouts/bar-[HASH]/{second_co_name}
1778
+ [REMOVING] [ROOT]/home/.cargo/git/db/bar-[HASH]
1774
1779
[REMOVED] [..]
1775
1780
"
1776
- ) )
1781
+ )
1782
+ . unordered ( ) ,
1783
+ )
1777
1784
. run ( ) ;
1778
1785
}
1779
1786
0 commit comments