Skip to content

Commit 63f35ab

Browse files
committed
Fix logging
1 parent 44e1d81 commit 63f35ab

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

robotframework_reportportal/listener.py

+15-3
Original file line numberDiff line numberDiff line change
@@ -185,11 +185,21 @@ def current_item(self) -> Optional[Union[Keyword, Launch, Suite, Test]]:
185185
"""Get the last item from the self._items queue."""
186186
return self._items.last()
187187

188+
def __post_log_message(self, message: LogMessage) -> None:
189+
"""Send log message to the Report Portal at skipped Keyword reporting.
190+
191+
:param message: Internal message object to send
192+
"""
193+
if message.attachment:
194+
logger.debug(f"ReportPortal - Log Message with Attachment: {message}")
195+
else:
196+
logger.debug(f"ReportPortal - Log Message: {message}")
197+
self.service.log(message=message)
198+
188199
def __post_skipped_keyword(self, kwd: Keyword) -> None:
189200
self._do_start_keyword(kwd)
190-
skipped_logs = getattr(kwd, "skipped_logs", [])
191-
for log_message in skipped_logs:
192-
self._log_message(log_message)
201+
for log_message in kwd.skipped_logs:
202+
self.__post_log_message(log_message)
193203
skipped_kwds = kwd.skipped_keywords
194204
kwd.skipped_keywords = []
195205
for skipped_kwd in skipped_kwds:
@@ -202,6 +212,8 @@ def _post_skipped_keywords(self, to_post: Optional[Any]) -> None:
202212
if isinstance(to_post, Keyword):
203213
if not to_post.posted:
204214
self._do_start_keyword(to_post)
215+
for log_message in to_post.skipped_logs:
216+
self.__post_log_message(log_message)
205217
skipped_kwds = getattr(to_post, "skipped_keywords", None)
206218
if skipped_kwds:
207219
to_post.skipped_keywords = []

tests/integration/test_remove_keywords.py

+3
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,6 @@ def test_wuks_keyword_remove(mock_client_init):
3737

3838
statuses = [finish[1]["status"] for finish in item_finish_calls]
3939
assert statuses == ["PASSED"] * 2 + ["SKIPPED"] * 2 + ["PASSED"] * 4
40+
41+
calls = utils.get_log_calls(mock_client)
42+
assert len(calls) == 3

0 commit comments

Comments
 (0)