@@ -48,7 +48,7 @@ def update_file() -> None:
4848 for suite in extract_metadata (cls_visitor .get_suites ()):
4949 _write_suite (test_spec , suite )
5050 for case in extract_metadata (func_visitor .get_cases ()):
51- _write_case (test_spec , case )
51+ _write_case (test_spec , case , suite [ "name" ] )
5252
5353
5454def _write_title (file : TextIO ) -> None :
@@ -83,15 +83,18 @@ def _write_suite(file: TextIO, metadata: Dict[str, str]) -> None:
8383 file .write (f" :category: ``{ metadata ['category' ]} ``\n \n " ) # Category
8484
8585
86- def _write_case (file : TextIO , metadata : Dict [str , str ]) -> None :
86+ def _write_case (file : TextIO , metadata : Dict [str , str ], suite_name : str = "" ) -> None :
8787 """
8888 Writes info of a test case.
8989
9090 Args:
9191 file (TextIO): test spec file
9292 metadata (Dict[str, str]): test case metadata
93+ suite_name (str): name of the parent test suite
9394 """
94- file .write (f".. _{ metadata ['name' ]} :\n \n " ) # custom anchor
95+ # Create unique anchor by combining suite and case name if suite is provided
96+ anchor_name = f"{ suite_name } _{ metadata ['name' ]} " if suite_name else metadata ["name" ]
97+ file .write (f".. _{ anchor_name } :\n \n " ) # custom anchor
9598 file .write (f" .. method:: { metadata ['name' ]} \n " ) # Test Case Name
9699 file .write (" :noindex:\n \n " )
97100
0 commit comments