@@ -650,14 +650,16 @@ mod tests {
650650 apply_column_type ( & mut col, & ColumnType :: Complex ( ty) ) ;
651651 }
652652
653- #[ test]
654- fn test_reference_action_conversion ( ) {
653+ #[ rstest]
654+ #[ case:: cascade( ReferenceAction :: Cascade , ForeignKeyAction :: Cascade ) ]
655+ #[ case:: restrict( ReferenceAction :: Restrict , ForeignKeyAction :: Restrict ) ]
656+ #[ case:: set_null( ReferenceAction :: SetNull , ForeignKeyAction :: SetNull ) ]
657+ #[ case:: set_default( ReferenceAction :: SetDefault , ForeignKeyAction :: SetDefault ) ]
658+ #[ case:: no_action( ReferenceAction :: NoAction , ForeignKeyAction :: NoAction ) ]
659+ fn test_reference_action_conversion ( #[ case] action : ReferenceAction , #[ case] expected : ForeignKeyAction ) {
655660 // Just ensure the function doesn't panic and returns valid ForeignKeyAction
656- let _ = to_sea_fk_action ( & ReferenceAction :: Cascade ) ;
657- let _ = to_sea_fk_action ( & ReferenceAction :: Restrict ) ;
658- let _ = to_sea_fk_action ( & ReferenceAction :: SetNull ) ;
659- let _ = to_sea_fk_action ( & ReferenceAction :: SetDefault ) ;
660- let _ = to_sea_fk_action ( & ReferenceAction :: NoAction ) ;
661+ let result = to_sea_fk_action ( & action) ;
662+ assert ! ( matches!( result, _expected) , "Expected {:?}, got {:?}" , expected, result) ;
661663 }
662664
663665 #[ test]
@@ -682,7 +684,6 @@ mod tests {
682684 assert ! ( sqlite_sql. contains( "\" users\" " ) ) ;
683685 }
684686
685- // ===== MySQL/SQLite backend coverage for all BuiltQuery variants =====
686687 #[ rstest]
687688 #[ case:: create_table_postgres(
688689 "create_table_postgres" ,
0 commit comments