@@ -376,24 +376,29 @@ mod test {
376376 . mount ( & quay)
377377 . await ;
378378
379+ let report = Arc :: new ( Mutex :: new ( ReportBuilder :: new ( ) ) ) ;
379380 let walker = QuayWalker :: new (
380381 QuayImporter {
381382 source : quay. uri ( ) [ 7 ..] . to_string ( ) ,
382383 unencrypted : true ,
383384 ..Default :: default ( )
384385 } ,
385386 ctx. ingestor . clone ( ) ,
386- Arc :: new ( Mutex :: new ( ReportBuilder :: new ( ) ) ) ,
387+ report . clone ( ) ,
387388 ( ) ,
388389 ) ?;
389390 walker. run ( ) . await ?;
390391
392+ let report = Arc :: try_unwrap ( report) . unwrap ( ) . into_inner ( ) . build ( ) ;
393+ assert_eq ! ( 8 , report. number_of_items) ;
394+ assert_eq ! ( 0 , report. messages. len( ) ) ;
395+
391396 Ok ( ( ) )
392397 }
393398
394399 #[ test_context( TrustifyContext ) ]
395400 #[ test( tokio:: test) ]
396- async fn missing_repo ( ctx : & TrustifyContext ) -> Result < ( ) , anyhow:: Error > {
401+ async fn missing_repo_and_sboms ( ctx : & TrustifyContext ) -> Result < ( ) , anyhow:: Error > {
397402 // Start a background HTTP server on a random local port
398403 let quay = MockServer :: start ( ) . await ;
399404
@@ -414,18 +419,24 @@ mod test {
414419 . mount ( & quay)
415420 . await ;
416421
422+ let report = Arc :: new ( Mutex :: new ( ReportBuilder :: new ( ) ) ) ;
417423 let walker = QuayWalker :: new (
418424 QuayImporter {
419425 source : quay. uri ( ) [ 7 ..] . to_string ( ) ,
420426 unencrypted : true ,
421427 ..Default :: default ( )
422428 } ,
423429 ctx. ingestor . clone ( ) ,
424- Arc :: new ( Mutex :: new ( ReportBuilder :: new ( ) ) ) ,
430+ report . clone ( ) ,
425431 ( ) ,
426432 ) ?;
427433 walker. run ( ) . await ?;
428434
435+ let report = Arc :: try_unwrap ( report) . unwrap ( ) . into_inner ( ) . build ( ) ;
436+ assert_eq ! ( 0 , report. number_of_items) ;
437+ // 5 404's: 4 sboms + 1 repo details
438+ assert_eq ! ( 5 , report. messages[ & Phase :: Retrieval ] . len( ) ) ;
439+
429440 Ok ( ( ) )
430441 }
431442
0 commit comments