Source code for robot.output.loggerapi

#  Copyright 2008-2015 Nokia Networks
#  Copyright 2016-     Robot Framework Foundation
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.

from pathlib import Path
from typing import Literal, TYPE_CHECKING

if TYPE_CHECKING:
    from robot import running, result, model


[docs] class LoggerApi:
[docs] def start_suite(self, data: 'running.TestSuite', result: 'result.TestSuite'): pass
[docs] def end_suite(self, data: 'running.TestSuite', result: 'result.TestSuite'): pass
[docs] def start_test(self, data: 'running.TestCase', result: 'result.TestCase'): pass
[docs] def end_test(self, data: 'running.TestCase', result: 'result.TestCase'): pass
[docs] def start_keyword(self, data: 'running.Keyword', result: 'result.Keyword'): self.start_body_item(data, result)
[docs] def end_keyword(self, data: 'running.Keyword', result: 'result.Keyword'): self.end_body_item(data, result)
[docs] def start_user_keyword(self, data: 'running.Keyword', implementation: 'running.UserKeyword', result: 'result.Keyword'): self.start_keyword(data, result)
[docs] def end_user_keyword(self, data: 'running.Keyword', implementation: 'running.UserKeyword', result: 'result.Keyword'): self.end_keyword(data, result)
[docs] def start_library_keyword(self, data: 'running.Keyword', implementation: 'running.LibraryKeyword', result: 'result.Keyword'): self.start_keyword(data, result)
[docs] def end_library_keyword(self, data: 'running.Keyword', implementation: 'running.LibraryKeyword', result: 'result.Keyword'): self.end_keyword(data, result)
[docs] def start_invalid_keyword(self, data: 'running.Keyword', implementation: 'running.KeywordImplementation', result: 'result.Keyword'): self.start_keyword(data, result)
[docs] def end_invalid_keyword(self, data: 'running.Keyword', implementation: 'running.KeywordImplementation', result: 'result.Keyword'): self.end_keyword(data, result)
[docs] def start_for(self, data: 'running.For', result: 'result.For'): self.start_body_item(data, result)
[docs] def end_for(self, data: 'running.For', result: 'result.For'): self.end_body_item(data, result)
[docs] def start_for_iteration(self, data: 'running.ForIteration', result: 'result.ForIteration'): self.start_body_item(data, result)
[docs] def end_for_iteration(self, data: 'running.ForIteration', result: 'result.ForIteration'): self.end_body_item(data, result)
[docs] def start_while(self, data: 'running.While', result: 'result.While'): self.start_body_item(data, result)
[docs] def end_while(self, data: 'running.While', result: 'result.While'): self.end_body_item(data, result)
[docs] def start_while_iteration(self, data: 'running.WhileIteration', result: 'result.WhileIteration'): self.start_body_item(data, result)
[docs] def end_while_iteration(self, data: 'running.WhileIteration', result: 'result.WhileIteration'): self.end_body_item(data, result)
[docs] def start_if(self, data: 'running.If', result: 'result.If'): self.start_body_item(data, result)
[docs] def end_if(self, data: 'running.If', result: 'result.If'): self.end_body_item(data, result)
[docs] def start_if_branch(self, data: 'running.IfBranch', result: 'result.IfBranch'): self.start_body_item(data, result)
[docs] def end_if_branch(self, data: 'running.IfBranch', result: 'result.IfBranch'): self.end_body_item(data, result)
[docs] def start_try(self, data: 'running.Try', result: 'result.Try'): self.start_body_item(data, result)
[docs] def end_try(self, data: 'running.Try', result: 'result.Try'): self.end_body_item(data, result)
[docs] def start_try_branch(self, data: 'running.TryBranch', result: 'result.TryBranch'): self.start_body_item(data, result)
[docs] def end_try_branch(self, data: 'running.TryBranch', result: 'result.TryBranch'): self.end_body_item(data, result)
[docs] def start_var(self, data: 'running.Var', result: 'result.Var'): self.start_body_item(data, result)
[docs] def end_var(self, data: 'running.Var', result: 'result.Var'): self.end_body_item(data, result)
[docs] def start_break(self, data: 'running.Break', result: 'result.Break'): self.start_body_item(data, result)
[docs] def end_break(self, data: 'running.Break', result: 'result.Break'): self.end_body_item(data, result)
[docs] def start_continue(self, data: 'running.Continue', result: 'result.Continue'): self.start_body_item(data, result)
[docs] def end_continue(self, data: 'running.Continue', result: 'result.Continue'): self.end_body_item(data, result)
[docs] def start_return(self, data: 'running.Return', result: 'result.Return'): self.start_body_item(data, result)
[docs] def end_return(self, data: 'running.Return', result: 'result.Return'): self.end_body_item(data, result)
[docs] def start_error(self, data: 'running.Error', result: 'result.Error'): self.start_body_item(data, result)
[docs] def end_error(self, data: 'running.Error', result: 'result.Error'): self.end_body_item(data, result)
[docs] def start_body_item(self, data, result): pass
[docs] def end_body_item(self, data, result): pass
[docs] def log_message(self, message: 'model.Message'): pass
[docs] def message(self, message: 'model.Message'): pass
[docs] def output_file(self, path: Path): """Called when XML output file is closed. Calls :meth:`result_file` by default. """ self.result_file('Output', path)
[docs] def report_file(self, path: Path): """Called when report file is closed. Calls :meth:`result_file` by default. """ self.result_file('Report', path)
[docs] def log_file(self, path: Path): """Called when log file is closed. Calls :meth:`result_file` by default. """ self.result_file('Log', path)
[docs] def xunit_file(self, path: Path): """Called when xunit file is closed. Calls :meth:`result_file` by default. """ self.result_file('XUnit', path)
[docs] def debug_file(self, path: Path): """Called when debug file is closed. Calls :meth:`result_file` by default. """ self.result_file('Debug', path)
[docs] def result_file(self, kind: Literal['Output', 'Report', 'Log', 'XUnit', 'Debug'], path: Path): """Called when any result file is closed by default. ``kind`` specifies the file type. This method is not called if a result file specific method like :meth:`output_file` is implemented. """ pass
[docs] def imported(self, import_type: str, name: str, attrs): pass
[docs] def close(self): pass