forked from thin-edge/modbus-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathoperation.robot
More file actions
58 lines (45 loc) · 2.47 KB
/
operation.robot
File metadata and controls
58 lines (45 loc) · 2.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
*** Settings ***
Resource ../resources/common.robot
Library Cumulocity
Suite Setup Set Main Device
*** Variables ***
${EXPECTED_BAUD_RATE} 9600
${EXPECTED_STOP_BITS} 2
${EXPECTED_PARITY} N
${EXPECTED_DATA_BITS} 8
*** Test Cases ***
Set values via c8y_SerialConfiguration Operation
${operation}= Update Serial Configuration Settings
... baud_rate=${EXPECTED_BAUD_RATE}
... stop_bits=${EXPECTED_STOP_BITS}
... parity=${EXPECTED_PARITY}
... data_bits=${EXPECTED_DATA_BITS}
Cumulocity.Operation Should Be SUCCESSFUL ${operation}
Serial configuration should be updated for the Device
${mo}= Managed Object Should Have Fragment Values
... c8y_SerialConfiguration.baudRate\=${EXPECTED_BAUD_RATE}
... c8y_SerialConfiguration.stopBits\=${EXPECTED_STOP_BITS}
... c8y_SerialConfiguration.parity\=${EXPECTED_PARITY}
... c8y_SerialConfiguration.dataBits\=${EXPECTED_DATA_BITS}
${baudrate}= Set Variable ${mo}[c8y_SerialConfiguration][baudRate]
${stopbits}= Set Variable ${mo}[c8y_SerialConfiguration][stopBits]
${parity}= Set Variable ${mo}[c8y_SerialConfiguration][parity]
${databits}= Set Variable ${mo}[c8y_SerialConfiguration][dataBits]
Should Be Equal As Numbers ${baudrate} ${EXPECTED_BAUD_RATE}
Should Be Equal As Numbers ${stopbits} ${EXPECTED_STOP_BITS}
Should Be Equal As Strings ${parity} ${EXPECTED_PARITY}
Should Be Equal As Numbers ${databits} ${EXPECTED_DATA_BITS}
Serial configuration should be updated on the Device
${shell_operation}= Execute Shell Command cat /etc/tedge/plugins/modbus/modbus.toml
${shell_operation}= Cumulocity.Operation Should Be SUCCESSFUL ${shell_operation}
${result_text}= Set Variable ${shell_operation}[c8y_Command][result]
Should Contain ${result_text} baudrate = ${EXPECTED_BAUD_RATE}
Should Contain ${result_text} stopbits = ${EXPECTED_STOP_BITS}
Should Contain ${result_text} parity = "${EXPECTED_PARITY}"
Should Contain ${result_text} databits = ${EXPECTED_DATA_BITS}
*** Keywords ***
Update Serial Configuration Settings
[Arguments] ${baud_rate} ${stop_bits} ${parity} ${data_bits}
${operation}= Cumulocity.Create Operation
... fragments={"c8y_SerialConfiguration": {"baudRate":${baud_rate},"stopBits":${stop_bits},"parity":"${parity}","dataBits":${data_bits}}}
RETURN ${operation}