Check Multiple Cyclic Messages With Timeout
- Checks during a timeout, whether a message within a message path is cyclic, with a period equal to a specific cycle
and with a tolerance equal to a cycle deviation value in milliseconds.
Arguments Description
message_path list(str): The message path should be in the format: [
BusName::MsgId
].cycle list(int): The expected cycle of the message in milliseconds.
cycle_deviation list(int): The tolerance in milliseconds.
timeout (int): The delay to check the cyclicity in milliseconds.
Returns
bool: True if the cycle was respected during the timeout; otherwise, False.
Example
# In this example, the keyword will start monitoring for the next 1200 milliseconds and check if the interval# between the timestamps of received messages is within the range of 200?20 ms.# If all occurrences satisfy the condition, the keyword passes.# However, if at least one occurrence doesn’t meet the period, the keyword should fail. ${Message_path} = create list BusName::MsgId ${cyclic} = create list 200 &{cyclicdeviation} = create list 20Check Multiple Cyclic Messages With Timeout ${Message_path} ${cyclic} &{cyclicdeviation} ${1200}
Note
No message observer needs to be started to monitor the message.
- If a message observer for that message is already active, all received values of that observer will be cleared.
Nevertheless, the observer will not be stopped after the timeout and will continue monitoring the message.