@@ -1092,8 +1092,8 @@ mod test {
1092
1092
1093
1093
/// Tests the calculation of the source checksum.
1094
1094
#[ tokio:: test]
1095
- #[ rustfmt:: skip]
1096
1095
async fn source_checksum_calculation ( ) {
1096
+ // Calling with different input yields a different checksum
1097
1097
let config_1 = CompilerConfig {
1098
1098
compiler_working_directory : "" . to_string ( ) ,
1099
1099
compilation_profile : CompilationProfile :: Dev ,
@@ -1135,33 +1135,54 @@ mod test {
1135
1135
cache : false ,
1136
1136
} ;
1137
1137
let mut seen = HashSet :: < String > :: new ( ) ;
1138
- for platform_version in [ "" , "v1" , "v2" ] {
1139
- for profile in [ CompilationProfile :: Dev , CompilationProfile :: Optimized , CompilationProfile :: Unoptimized ] {
1140
- for config in [ config_1. clone ( ) , config_2. clone ( ) , config_3. clone ( ) , config_4. clone ( ) ] {
1141
- for program_config in [ program_config_1. clone ( ) ] {
1142
- for main_rust in [ "" , "a" , "aa" , "b" , "c" , "d" , "e" ] {
1143
- for udf_stubs in [ "" , "a" , "aa" , "b" , "c" , "d" , "e" ] {
1144
- for udf_rust in [ "" , "a" , "aa" , "b" , "c" , "d" , "e" ] {
1145
- for udf_toml in [ "" , "a" , "aa" , "b" , "c" , "d" , "e" ] {
1146
- let source_checksum = calculate_source_checksum (
1147
- platform_version,
1148
- & profile,
1149
- & config,
1150
- & program_config,
1151
- main_rust,
1152
- udf_stubs,
1153
- udf_rust,
1154
- udf_toml
1155
- ) ;
1156
- assert ! ( !seen. contains( & source_checksum) , "checksum {source_checksum} has a duplicate" ) ;
1157
- seen. insert ( source_checksum) ;
1158
- }
1159
- }
1160
- }
1161
- }
1162
- }
1163
- }
1164
- }
1138
+ let platform_versions = [ "" , "v1" , "v2" ] ;
1139
+ let profiles = [
1140
+ CompilationProfile :: Dev ,
1141
+ CompilationProfile :: Optimized ,
1142
+ CompilationProfile :: Unoptimized ,
1143
+ ] ;
1144
+ let configs = [
1145
+ config_1. clone ( ) ,
1146
+ config_2. clone ( ) ,
1147
+ config_3. clone ( ) ,
1148
+ config_4. clone ( ) ,
1149
+ ] ;
1150
+ let program_configs = [ program_config_1. clone ( ) ] ;
1151
+ let content = [ "" , "a" , "aa" , "b" , "c" , "d" , "e" ] ;
1152
+ for (
1153
+ platform_version,
1154
+ profile,
1155
+ config,
1156
+ program_config,
1157
+ main_rust,
1158
+ udf_stubs,
1159
+ udf_rust,
1160
+ udf_toml,
1161
+ ) in itertools:: iproduct!(
1162
+ platform_versions,
1163
+ profiles,
1164
+ configs,
1165
+ program_configs,
1166
+ content,
1167
+ content,
1168
+ content,
1169
+ content
1170
+ ) {
1171
+ let source_checksum = calculate_source_checksum (
1172
+ platform_version,
1173
+ & profile,
1174
+ & config,
1175
+ & program_config,
1176
+ main_rust,
1177
+ udf_stubs,
1178
+ udf_rust,
1179
+ udf_toml,
1180
+ ) ;
1181
+ assert ! (
1182
+ !seen. contains( & source_checksum) ,
1183
+ "checksum {source_checksum} has a duplicate"
1184
+ ) ;
1185
+ seen. insert ( source_checksum) ;
1165
1186
}
1166
1187
1167
1188
// Calling with the same input yields the same checksum
@@ -1173,7 +1194,7 @@ mod test {
1173
1194
"main_rust" ,
1174
1195
"udf_stubs" ,
1175
1196
"udf_rust" ,
1176
- "udf_toml"
1197
+ "udf_toml" ,
1177
1198
) ;
1178
1199
let checksum2 = calculate_source_checksum (
1179
1200
"v0" ,
@@ -1183,7 +1204,7 @@ mod test {
1183
1204
"main_rust" ,
1184
1205
"udf_stubs" ,
1185
1206
"udf_rust" ,
1186
- "udf_toml"
1207
+ "udf_toml" ,
1187
1208
) ;
1188
1209
assert_eq ! ( checksum1, checksum2) ;
1189
1210
@@ -1199,7 +1220,7 @@ mod test {
1199
1220
"main_rust" ,
1200
1221
"udf_stubs" ,
1201
1222
"udf_rust" ,
1202
- "udf_toml"
1223
+ "udf_toml" ,
1203
1224
) ;
1204
1225
let checksum2 = calculate_source_checksum (
1205
1226
"v0" ,
@@ -1212,7 +1233,7 @@ mod test {
1212
1233
"main_rust" ,
1213
1234
"udf_stubs" ,
1214
1235
"udf_rust" ,
1215
- "udf_toml"
1236
+ "udf_toml" ,
1216
1237
) ;
1217
1238
assert_eq ! ( checksum1, checksum2) ;
1218
1239
}
0 commit comments