| *** Keywords *** |
| Create Machine With Dummy Sensor |
| [Arguments] ${sensorName} |
| Execute Command mach create |
| Execute Command machine LoadPlatformDescriptionFromString "${sensorName}: Sensors.DummySensor @ sysbus <0x0, +0x4>" |
| |
| Create Machine With Multiple Dummy Sensors |
| [Arguments] ${sensorName1} ${sensorName2} |
| Execute Command mach create |
| Execute Command machine LoadPlatformDescriptionFromString "${sensorName1}: Sensors.DummySensor @ sysbus <0x0, +0x4>" |
| Execute Command machine LoadPlatformDescriptionFromString "${sensorName2}: Sensors.DummySensor @ sysbus <0x4, +0x4>" |
| |
| Should List Sensor In Environment Once |
| [Arguments] ${env} ${sensorName} |
| ${lines}= Execute Command ${env} GetRegisteredSensorsNames |
| ${result}= Get Lines Containing String ${lines} ${sensorName} |
| ${count}= Get Line Count ${result} |
| Should Be Equal As Integers ${count} 1 |
| |
| *** Test Cases *** |
| Should List Sensor Once |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Should List Sensor In Environment Once env1 machine-0:sysbus.dummySensor1 |
| |
| Should Set Temperature On Single Sensor |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command machine SetEnvironment env1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| |
| Should Set Temperature On Single Sensor Twice |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command machine SetEnvironment env1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| Execute Command env1 Temperature 38.1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 38.1 |
| |
| Should Set Temperature And Humidity On Single Sensor |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command env1 Humidity 89.5 |
| Execute Command machine SetEnvironment env1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| ${humidity}= Execute Command sysbus.dummySensor1 Humidity |
| Should Contain ${humidity} 89.5 |
| |
| Should List Sensor Once If Machine Was Added To Environment Twice |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command machine SetEnvironment env1 |
| Should List Sensor In Environment Once env1 machine-0:sysbus.dummySensor1 |
| |
| Should Update Sensor Once If Machine Was Added To Environment Twice |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| ${count}= Execute Command sysbus.dummySensor1 TemperatureUpdateCounter |
| Should Contain ${count} 0x00000001 |
| Execute Command machine SetEnvironment env1 |
| ${count}= Execute Command sysbus.dummySensor1 TemperatureUpdateCounter |
| Should Contain ${count} 0x00000001 |
| |
| |
| |
| |
| |
| Should List Two Sensors |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Contain ${lines} machine-0:sysbus.dummySensor1 |
| Should Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| Should Set Temperature After Machine Reset |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command env1 Temperature 55.5 |
| Execute Command s |
| Execute Command machine Reset #Reset requires the machine to be started |
| Execute Command p |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 55.5 |
| |
| Should List Two Sensors In Different Environments |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command sysbus.dummySensor2 SetEnvironment env2 |
| Should List Sensor In Environment Once env1 machine-0:sysbus.dummySensor1 |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| Should List Sensor In Environment Once env2 machine-0:sysbus.dummySensor2 |
| ${lines}= Execute Command env2 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| Should Set Temperature On Two Sensors In Different Environments |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command machine SetEnvironment env1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| ${temperature}= Execute Command sysbus.dummySensor2 Temperature |
| Should Contain ${temperature} 36.6 |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command env2 Temperature 40.5 |
| Execute Command sysbus.dummySensor2 SetEnvironment env2 |
| ${temperature}= Execute command sysbus.dummySensor2 Temperature |
| Should Contain ${temperature} 40.5 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| |
| Should Set Temperature On Two Sensors In Different Environments After Reset |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command machine SetEnvironment env1 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| ${temperature}= Execute Command sysbus.dummySensor2 Temperature |
| Should Contain ${temperature} 36.6 |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command env2 Temperature 40.5 |
| Execute Command sysbus.dummySensor2 SetEnvironment env2 |
| Execute Command s |
| Execute command machine Reset |
| Execute Command p |
| ${temperature}= Execute command sysbus.dummySensor2 Temperature |
| Should Contain ${temperature} 40.5 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| |
| |
| |
| |
| |
| Should Set Temperature On Sensors Added After Registering An Environment |
| Execute Command mach create |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command env1 Temperature 36.6 |
| Execute Command machine SetEnvironment env1 |
| Execute Command machine LoadPlatformDescriptionFromString "dummySensor1: Sensors.DummySensor @ sysbus <0x4, +0x4>" |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 36.6 |
| |
| Should Move Sensors Between Environments |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command emulation CreateEnvironment "env2" |
| |
| Execute Command machine SetEnvironment env1 |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Contain ${lines} machine-0:sysbus.dummySensor1 |
| Should Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| Execute Command machine SetEnvironment env2 |
| ${lines}= Execute Command env2 GetRegisteredSensorsNames |
| Should Contain ${lines} machine-0:sysbus.dummySensor1 |
| Should Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| Should Move Sensor With The Machine |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command emulation CreateEnvironment "env3" |
| Execute Command machine SetEnvironment env1 |
| Execute Command sysbus.dummySensor1 SetEnvironment env2 |
| Execute Command machine SetEnvironment env3 |
| ${lines}= Execute Command env2 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| Should Move Added Sensor Between Environments |
| Execute Command mach create |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command machine SetEnvironment env1 |
| Execute Command machine LoadPlatformDescriptionFromString "dummySensor1: Sensors.DummySensor @ sysbus <0x0, +0x4>" |
| Execute Command machine SetEnvironment env2 |
| |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| ${lines}= Execute Command env2 GetRegisteredSensorsNames |
| Should Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| |
| |
| |
| |
| Should Not List Removed Sensor |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command machine UnregisterFromParent sysbus.dummySensor1 |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| Should Not List Sensors From Removed Machine |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command emulation RemoveMachine "machine-0" |
| ${lines}= Execute Command env1 GetRegisteredSensorsNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor1 |
| |
| Should Not List Removed Machine |
| Execute Command mach create |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command emulation RemoveMachine "machine-0" |
| ${lines}= Execute Command env1 GetRegisteredMachineNames |
| Should Not Contain ${lines} machine-0 |
| |
| Should Not List Sensors From Removed Machine In Different Environment |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command emulation CreateEnvironment "env2" |
| Execute Command machine SetEnvironment env1 |
| Execute Command sysbus.dummySensor2 SetEnvironment env2 |
| Execute Command emulation RemoveMachine "machine-0" |
| ${lines}= Execute Command env2 GetRegisteredMachineNames |
| Should Not Contain ${lines} machine-0:sysbus.dummySensor2 |
| |
| Should Set Temperature After Sensor Removal |
| Create Machine With Multiple Dummy Sensors dummySensor1 dummySensor2 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command machine UnregisterFromParent sysbus.dummySensor1 |
| Execute Command env1 Temperature 55.5 |
| ${temperature}= Execute Command sysbus.dummySensor2 Temperature |
| Should Contain ${temperature} 55.5 |
| |
| Should Set Temperature On Readded Sensor |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Execute Command env1 Temperature 55.5 |
| Execute Command machine UnregisterFromParent sysbus.dummySensor1 |
| Execute Command machine LoadPlatformDescriptionFromString "dummySensor1: Sensors.DummySensor @ sysbus <0x0, +0x4>" |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 55.5 |
| |
| Should Serialize And Set Temperature On Single Sensor |
| Create Machine With Dummy Sensor dummySensor1 |
| Execute Command emulation CreateEnvironment "env1" |
| Execute Command machine SetEnvironment env1 |
| Handle Hot Spot Serialize |
| Execute Command mach set 0 |
| Execute Command env1 Temperature 55.5 |
| ${temperature}= Execute Command sysbus.dummySensor1 Temperature |
| Should Contain ${temperature} 55.5 |