Author: Sergei Druzhkov Date: 2026-02-18T22:02:59+03:00 New Revision: e612350b334a01854e4e86d344d3ba12ad6c209a
URL: https://github.com/llvm/llvm-project/commit/e612350b334a01854e4e86d344d3ba12ad6c209a DIFF: https://github.com/llvm/llvm-project/commit/e612350b334a01854e4e86d344d3ba12ad6c209a.diff LOG: [lldb-dap][NFC] Modernize events handling in tests (#181542) Migrated `initialized` and `memory` events to new style handling. Added: Modified: lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py Removed: ################################################################################ diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py index abceceeb49269..e8fd8e8e37e65 100644 --- a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py +++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py @@ -245,10 +245,7 @@ def __init__( self.terminated: bool = False self.events: List[Event] = [] self.progress_events: List[Event] = [] - self.invalidated_event: Optional[Event] = None - self.memory_event: Optional[Event] = None self.reverse_requests: List[Request] = [] - self.module_events: List[Dict] = [] self.sequence: int = 1 self.output: Dict[str, str] = {} self.reverse_process: Optional[subprocess.Popen] = None @@ -513,10 +510,6 @@ def _handle_event(self, packet: Event) -> None: elif event == "capabilities" and body: # Update the capabilities with new ones from the event. self.capabilities.update(body["capabilities"]) - elif event == "invalidated": - self.invalidated_event = packet - elif event == "memory": - self.memory_event = packet def _handle_reverse_request(self, request: Request) -> None: if request in self.reverse_requests: @@ -704,6 +697,18 @@ def wait_for_terminated(self): raise ValueError("didn't get terminated event") return event_dict + def wait_for_invalidated(self): + event_dict = self.wait_for_event(["invalidated"]) + if event_dict is None: + raise ValueError("didn't get invalidated event") + return event_dict + + def wait_for_memory(self): + event_dict = self.wait_for_event(["memory"]) + if event_dict is None: + raise ValueError("didn't get memory event") + return event_dict + def get_capability(self, key: str): """Get a value for the given key if it there is a key/value pair in the capabilities reported by the adapter. diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py index 52cb0ac08d586..14a5698653588 100644 --- a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py +++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py @@ -265,21 +265,6 @@ def verify_commands(self, flavor: str, output: str, commands: List[str]): f"Command '{flavor}' - '{cmd}' not found in output: {output}", ) - def verify_invalidated_event(self, expected_areas): - event = self.dap_server.invalidated_event - self.dap_server.invalidated_event = None - self.assertIsNotNone(event) - areas = event["body"].get("areas", []) - self.assertEqual(set(expected_areas), set(areas)) - - def verify_memory_event(self, memoryReference): - if memoryReference is None: - self.assertIsNone(self.dap_server.memory_event) - event = self.dap_server.memory_event - self.dap_server.memory_event = None - self.assertIsNotNone(event) - self.assertEqual(memoryReference, event["body"].get("memoryReference")) - def get_dict_value(self, d: Mapping[str, Any], key_path: List[str]) -> Any: """Verify each key in the key_path array is in contained in each dictionary within "d". Assert if any key isn't in the @@ -381,8 +366,13 @@ def set_variable(self, varRef, name, value, id=None, is_hex: Optional[bool] = No varRef, name, str(value), id=id, is_hex=is_hex ) if response["success"]: - self.verify_invalidated_event(["variables"]) - self.verify_memory_event(response["body"].get("memoryReference")) + invalidated_event = self.dap_server.wait_for_invalidated() + self.assertEqual(invalidated_event["body"].get("areas"), ["variables"]) + memory_event = self.dap_server.wait_for_memory() + self.assertEqual( + memory_event["body"].get("memoryReference"), + response["body"].get("memoryReference"), + ) return response def set_local(self, name, value, id=None, is_hex: Optional[bool] = None): @@ -625,5 +615,6 @@ def writeMemory(self, memoryReference, data=None, offset=0, allowPartial=False): memoryReference, encodedData, offset=offset, allowPartial=allowPartial ) if response["success"]: - self.verify_invalidated_event(["all"]) + invalidated_event = self.dap_server.wait_for_invalidated() + self.assertEqual(invalidated_event["body"].get("areas"), ["all"]) return response _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
