@@ -224,6 +224,100 @@ expect:
224224 ) ;
225225 }
226226
227+ #[ test]
228+ fn test_checked_in_readiness_blocker_fixture_loads_summary_expectations ( ) {
229+ let fixture_path = std:: path:: Path :: new ( env ! ( "CARGO_MANIFEST_DIR" ) ) . join (
230+ "eval/fixtures/repo_regressions/readiness_informational_blocker_classification.yml" ,
231+ ) ;
232+
233+ let fixtures = load_eval_fixtures_from_path ( & fixture_path) . unwrap ( ) ;
234+
235+ assert_eq ! ( fixtures. len( ) , 1 ) ;
236+ assert_eq ! (
237+ fixtures[ 0 ] . fixture. name. as_deref( ) ,
238+ Some ( "repo regression - informational findings counted as blockers" )
239+ ) ;
240+ assert_eq ! (
241+ fixtures[ 0 ] . fixture. expect. must_find[ 0 ] . rule_id. as_deref( ) ,
242+ Some ( "bug.readiness.informational-blocker-classification" )
243+ ) ;
244+ assert_eq ! (
245+ fixtures[ 0 ]
246+ . fixture
247+ . expect
248+ . summary
249+ . merge_readiness
250+ . as_deref( ) ,
251+ Some ( "NeedsAttention" )
252+ ) ;
253+ assert_eq ! (
254+ fixtures[ 0 ] . fixture. expect. summary. min_open_blockers,
255+ Some ( 1 )
256+ ) ;
257+ }
258+
259+ #[ test]
260+ fn test_checked_in_current_head_stale_fixture_loads_summary_expectations ( ) {
261+ let fixture_path = std:: path:: Path :: new ( env ! ( "CARGO_MANIFEST_DIR" ) )
262+ . join ( "eval/fixtures/repo_regressions/readiness_current_head_stale.yml" ) ;
263+
264+ let fixtures = load_eval_fixtures_from_path ( & fixture_path) . unwrap ( ) ;
265+
266+ assert_eq ! ( fixtures. len( ) , 1 ) ;
267+ assert_eq ! (
268+ fixtures[ 0 ] . fixture. name. as_deref( ) ,
269+ Some ( "repo regression - current head staleness ignored" )
270+ ) ;
271+ assert_eq ! (
272+ fixtures[ 0 ] . fixture. expect. must_find[ 0 ] . rule_id. as_deref( ) ,
273+ Some ( "bug.readiness.current-head-staleness" )
274+ ) ;
275+ assert_eq ! (
276+ fixtures[ 0 ]
277+ . fixture
278+ . expect
279+ . summary
280+ . merge_readiness
281+ . as_deref( ) ,
282+ Some ( "NeedsAttention" )
283+ ) ;
284+ assert_eq ! (
285+ fixtures[ 0 ] . fixture. expect. summary. min_open_blockers,
286+ Some ( 1 )
287+ ) ;
288+ }
289+
290+ #[ test]
291+ fn test_checked_in_inconclusive_verification_fixture_loads_summary_expectations ( ) {
292+ let fixture_path = std:: path:: Path :: new ( env ! ( "CARGO_MANIFEST_DIR" ) )
293+ . join ( "eval/fixtures/repo_regressions/readiness_inconclusive_verification.yml" ) ;
294+
295+ let fixtures = load_eval_fixtures_from_path ( & fixture_path) . unwrap ( ) ;
296+
297+ assert_eq ! ( fixtures. len( ) , 1 ) ;
298+ assert_eq ! (
299+ fixtures[ 0 ] . fixture. name. as_deref( ) ,
300+ Some ( "repo regression - inconclusive verification no longer blocks readiness" )
301+ ) ;
302+ assert_eq ! (
303+ fixtures[ 0 ] . fixture. expect. must_find[ 0 ] . rule_id. as_deref( ) ,
304+ Some ( "bug.readiness.inconclusive-verification" )
305+ ) ;
306+ assert_eq ! (
307+ fixtures[ 0 ]
308+ . fixture
309+ . expect
310+ . summary
311+ . merge_readiness
312+ . as_deref( ) ,
313+ Some ( "NeedsAttention" )
314+ ) ;
315+ assert_eq ! (
316+ fixtures[ 0 ] . fixture. expect. summary. min_open_blockers,
317+ Some ( 1 )
318+ ) ;
319+ }
320+
227321 #[ test]
228322 fn test_collect_eval_fixtures_expands_pack_entries_in_sorted_order ( ) {
229323 let dir = tempdir ( ) . unwrap ( ) ;
0 commit comments