Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Mihini/QA Plan/0.9"
(→GPIO devicetree handler) |
(→Results and Status) |
||
(107 intermediate revisions by the same user not shown) | |||
Line 22: | Line 22: | ||
|- | |- | ||
| Status ( ok tests / total tests) | | Status ( ok tests / total tests) | ||
− | | <br> | + | | 15 / 15 suites<br> |
|- | |- | ||
| Comments | | Comments | ||
− | | <br> | + | | <br> No critical bug found. |
|- | |- | ||
| Final status with date | | Final status with date | ||
− | | <br> | + | | <br> OK, 19/08/2013 |
|} | |} | ||
Line 35: | Line 35: | ||
<br> | <br> | ||
− | <br> | + | <br> |
= Miscellaneous {{task-done}} = | = Miscellaneous {{task-done}} = | ||
Line 247: | Line 247: | ||
|} | |} | ||
− | = Server Connection (agent.srvcon) | + | = Server Connection (agent.srvcon) {{task-done}} = |
<br> | <br> | ||
Line 282: | Line 282: | ||
|- | |- | ||
| | | | ||
− | Mihini_3.0. | + | Mihini_3.0.1 |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<br> | <br> | ||
Line 328: | Line 304: | ||
|- | |- | ||
| | | | ||
− | Mihini_3.0. | + | Mihini_3.0.2 |
<br> | <br> | ||
Line 352: | Line 328: | ||
|- | |- | ||
| | | | ||
− | Mihini_3.0. | + | Mihini_3.0.3 |
<br> | <br> | ||
Line 376: | Line 352: | ||
|} | |} | ||
− | == Commands (agent.devman.cmds) == | + | == Commands (agent.devman.cmds) {{task-done}} == |
This chapter must be done using platform jobs: retrieve data, apply settings, send command. | This chapter must be done using platform jobs: retrieve data, apply settings, send command. | ||
Line 450: | Line 426: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]]<br> |
|- | |- | ||
| | | | ||
Line 491: | Line 467: | ||
| <br> | | <br> | ||
− | + | [[Image:Check.png]]<br> <br> | |
<br> | <br> | ||
Line 514: | Line 490: | ||
<br> <br> | <br> <br> | ||
− | | | + | | [[Image:Check.png]]<br> |
|- | |- | ||
| | | | ||
− | Mihini_3.1. | + | Mihini_3.1.6 |
<br> | <br> | ||
Line 535: | Line 511: | ||
| | | | ||
− | + | [[Image:Check.png]]<br> | |
<br> <br> | <br> <br> | ||
Line 543: | Line 519: | ||
|} | |} | ||
− | == Data Writing == | + | == Data Writing {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 615: | Line 591: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]]<br> |
|} | |} | ||
− | == Network Manager (agent.netman) == | + | == Network Manager (agent.netman) {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 668: | Line 644: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 690: | Line 666: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 712: | Line 688: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 734: | Line 710: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 756: | Line 732: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 778: | Line 754: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 800: | Line 776: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 822: | Line 798: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|} | |} | ||
− | = Software Update = | + | = Software Update {{task-done}} = |
{| border="1" | {| border="1" | ||
Line 867: | Line 843: | ||
| | | | ||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]]<br> | ||
<br> | <br> | ||
Line 894: | Line 875: | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]]<br> | ||
+ | <br> | ||
+ | |||
| | | | ||
Line 915: | Line 902: | ||
| | | | ||
− | <br> | + | <br> |
+ | |||
− | |||
<br> | <br> | ||
+ | |||
+ | | [[Image:Check.png]]<br> | ||
+ | <br> | ||
+ | |||
<br> | <br> | ||
Line 943: | Line 934: | ||
<br> | <br> | ||
− | | | + | |
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]]<br> | ||
<br> | <br> | ||
+ | |||
<br> | <br> | ||
Line 969: | Line 964: | ||
<br> | <br> | ||
− | | <br> | + | | [[Image:Check.png]]<br> |
+ | <br> | ||
+ | |||
|- | |- | ||
| | | | ||
Line 991: | Line 988: | ||
<br> | <br> | ||
− | | <br> | + | <br> |
+ | |||
+ | | [[Image:Check.png]]<br> | ||
<br> | <br> | ||
Line 1,011: | Line 1,010: | ||
| | | | ||
− | + | create a updatepackage.tar and drop it in /runtime/update/drop, then use require"agent.update".localupdate() in shell agent to execute the local update | |
<br> | <br> | ||
− | | | + | <br> |
+ | |||
+ | | [[Image:Check.png]]<br> | ||
<br> | <br> | ||
Line 1,039: | Line 1,040: | ||
<br> | <br> | ||
− | |||
<br> | <br> | ||
+ | |||
+ | | [[Image:Check.png]]<br> | ||
+ | <br> | ||
+ | |||
|} | |} | ||
Line 1,154: | Line 1,158: | ||
|} | |} | ||
− | = Time = | + | = Time{{task-done}} = |
{| border="1" | {| border="1" | ||
Line 1,204: | Line 1,208: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 1,226: | Line 1,230: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 1,248: | Line 1,252: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|- | |- | ||
| | | | ||
Line 1,270: | Line 1,274: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
|} | |} | ||
− | = Serial Framework (modbus) | + | = Serial Framework (modbus) {{task-done}} = |
{| border="1" | {| border="1" | ||
Line 1,314: | Line 1,318: | ||
| | | | ||
− | Run | + | Run modbus_test.lua file calling all the API functions in an infinite loop. Verify execution. |
<br> | <br> | ||
| | | | ||
− | + | automatique test with the modbus_test.lua file | |
<br> | <br> | ||
− | | <br> | + | <br> |
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
+ | |||
|- | |- | ||
| | | | ||
Line 1,339: | Line 1,346: | ||
<br> | <br> | ||
− | |||
| | | | ||
<br> | <br> | ||
Line 1,346: | Line 1,352: | ||
| <br> | | <br> | ||
+ | |||
+ | <br> | ||
+ | [[Image:Check.png]] | ||
+ | | | ||
+ | <br> | ||
|} | |} | ||
− | = Messaging | + | = Messaging {{task-done}} = |
{| border="1" | {| border="1" | ||
Line 1,399: | Line 1,410: | ||
| | | | ||
− | + | [[Image:Check.png|(coche)]] | |
+ | SMS reception is working properly. | ||
+ | SMS sending was OK when SMS was received by another device | ||
+ | |||
+ | [[Image:Important.png|(avertissement)]] | ||
+ | SMS sending was not fully tested because reception of 8bits SMS is not widely supported, on cell phones, the result varies from no SMS received at all to SMs received without the correct content. | ||
<br> | <br> | ||
Line 1,570: | Line 1,586: | ||
|} | |} | ||
− | = M2M Server = | + | = M2M Server{{task-done}} = |
{| border="1" | {| border="1" | ||
Line 1,620: | Line 1,636: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
|} | |} | ||
− | == M2M Server APIs {{task-done}} == | + | == M2M Server APIs {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 1,788: | Line 1,804: | ||
|} | |} | ||
− | <br> | + | <br> |
− | == Device Status Access | + | == Device Status Access (N/A) {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 1,841: | Line 1,857: | ||
| | | | ||
− | + | NA | |
|- | |- | ||
Line 1,855: | Line 1,871: | ||
| | | | ||
− | Display all data defined in the | + | Display all data defined in the M3DA Dev Tree and check they are relevant. <br> <br> Check the availability of Radio Module data: <br> - Hardware Version: system.cellular.hw_info.hw_ver <br> - Firmware Version: system.cellular.sw_info.fw_ver |
<br> | <br> | ||
Line 1,867: | Line 1,883: | ||
<br> <br> | <br> <br> | ||
− | + | NA | |
|- | |- | ||
Line 1,881: | Line 1,897: | ||
| | | | ||
− | Display all data defined in the | + | Display all data defined in the M3DA Dev Tree and check they are relevant. <br> <br> Check the availability of Router data: <br> - Hardware Version: system.hw_info.hw_ver <br> - Firmware Version: system.sw_info.fw_ver |
<br> | <br> | ||
Line 1,890: | Line 1,906: | ||
<br> | <br> | ||
− | | | + | | NA |
|- | |- | ||
| | | | ||
Line 1,903: | Line 1,919: | ||
| | | | ||
− | Display all data defined in the | + | Display all data defined in the M3DA Dev Tree and check they are relevant. <br> <br> From an application in the Mihini, Read the the Mihini version. |
<br> (:require "agent.update.common".data.swlist) | <br> (:require "agent.update.common".data.swlist) | ||
Line 1,914: | Line 1,930: | ||
<br> | <br> | ||
− | | | + | | NA |
|} | |} | ||
− | == Mihini Configuration Access | + | == Mihini Configuration Access {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 1,968: | Line 1,984: | ||
| | | | ||
− | + | [[Image:Check.png|(coche)]] | |
<br> | <br> | ||
Line 1,974: | Line 1,990: | ||
|} | |} | ||
− | == Factory Reset == | + | == Factory Reset APIs {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 2,015: | Line 2,031: | ||
| | | | ||
− | Install an one or more applications in the user space. Change some data in the treemgr. <br> Perform a Reset to factory defaults using the UI and check that all applications and data have been removed. <br><br> | + | Install an one or more applications in the user space. Change some data in the treemgr. <br> Perform a Reset to factory defaults using the UI and check that all applications and data have been removed. The server sends this command, must be the one defined by default in defaultconfig.lua, because it need to receive the acknowlege from the device after <br><br> |
| | | | ||
Line 2,022: | Line 2,038: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]]<br> |
<br> | <br> | ||
+ | |||
<br> | <br> | ||
Line 2,029: | Line 2,046: | ||
|} | |} | ||
− | == Mihini Updates == | + | == Mihini Updates {{task-done}} == |
<br> | <br> | ||
Line 2,078: | Line 2,095: | ||
| | | | ||
− | + | N/A Mihini agent update is dependent on each integration. | |
|- | |- | ||
Line 2,101: | Line 2,118: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
− | + | ||
− | + | ||
<br> | <br> | ||
Line 2,122: | Line 2,137: | ||
<br> | <br> | ||
− | | | + | | <br> |
<br> | <br> | ||
− | <br> | + | <br> <br> |
− | | <br> | + | | [[Image:Check.png|(coche)]] |
+ | <br> | ||
<br> | <br> | ||
Line 2,149: | Line 2,165: | ||
SW_update_2_old.tar <br> SW_update_2_new.tar <br> agent.update.localupdate() | SW_update_2_old.tar <br> SW_update_2_new.tar <br> agent.update.localupdate() | ||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png|(coche)]] | ||
<br> | <br> | ||
Line 2,164: | Line 2,183: | ||
| | | | ||
− | Try to install an application requiring a specific version of the | + | Try to install an application requiring a specific version of the Agent <br> - with a wrong one: Rejected <br> - with a good one: Accepted |
<br> | <br> | ||
| | | | ||
+ | <br> | ||
+ | |||
+ | <br> <br> | ||
+ | |||
+ | | [[Image:Check.png|(coche)]] | ||
<br> | <br> | ||
Line 2,186: | Line 2,210: | ||
| | | | ||
− | 199 : | + | 199 : Populate the Software Update component/feature list by installing some applications to provide Mihini version, applications versions etc. as features with corresponding versions. <br>This is the cas if you ran the previous tests, and your swlist is not empty :).<br><br> Check in the DeviceTree that those versions are available and up-to-date |
+ | |||
+ | (example of commands to run dt.get("update.swlist.components.1.version")) | ||
<br> | <br> | ||
| | | | ||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png|(coche)]] | ||
<br> | <br> | ||
Line 2,208: | Line 2,239: | ||
| | | | ||
− | Try to install an application requiring a library not present in the update package nor the installed list apps. The installation shall be rejected. <br> Try to install an application requiring a library present in the update package. The installation shall be accepted. | + | Try to install an application requiring a library not present in the update package nor in the installed list apps. The installation shall be rejected. <br> Try to install an application requiring a library present in the update package. The installation shall be accepted. |
<br> | <br> | ||
Line 2,215: | Line 2,246: | ||
SW_update_4.tar | SW_update_4.tar | ||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png|(coche)]] | ||
<br> | <br> | ||
Line 2,239: | Line 2,275: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
<br> | <br> | ||
Line 2,256: | Line 2,292: | ||
| | | | ||
− | Check that the | + | Check that the Mihini agent runs with specific user rights <br> Check that an application runs with application specific user rights (different from Mihini's user) |
− | <br> | + | <br>1)<br>start appmon daemon using a command like |
+ | |||
+ | sudo ./bin/appmon_daemon -a /home/pi/mihini/start.sh -w /home/pi/mihini -u SOMEUSER -g SOMEUSERGROUP -n 5<br>check mihini agent is run as root, applications are run as SOMEUSER / SOMEUSERGROUP<br><br> start appmon daemon using a command like<br>sudo ./bin/appmon_daemon -a /home/pi/mihini/start.sh -w /home/pi/mihini -v ANOTHERUSER -h ANOTHERUSERGROUP -u SOMEUSER -g SOMEUSERGROUP -n 5<br>check mihini agent is run as ANOTHERUSER / ANOTHERUSERGROUP, applications are run as SOMEUSER / SOMEUSERGROUP<br> <br> | ||
| | | | ||
<br> | <br> | ||
+ | | [[Image:Check.png|(coche)]] | ||
<br> | <br> | ||
Line 2,294: | Line 2,333: | ||
test_uasuser_rights_persist_installation.tar <br> test_uasuser_rights_persist_update.tar <br> test_uasuser_rights_persist_uninstallation.tar <br> <br> agent.update.localupdate(path,true) <br> agent.update.getstatus() <br> :agent.appcon.list() <br> :devicetree.get("update.swlist.components.3.version") <br> | test_uasuser_rights_persist_installation.tar <br> test_uasuser_rights_persist_update.tar <br> test_uasuser_rights_persist_uninstallation.tar <br> <br> agent.update.localupdate(path,true) <br> agent.update.getstatus() <br> :agent.appcon.list() <br> :devicetree.get("update.swlist.components.3.version") <br> | ||
− | <br> | + | <br> <br> |
− | | | + | | [[Image:Check.png|(coche)]] |
<br> | <br> | ||
− | <br> | + | <br> <br> |
|- | |- | ||
Line 2,322: | Line 2,361: | ||
<br> | <br> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
<br> | <br> | ||
Line 2,329: | Line 2,368: | ||
|} | |} | ||
− | == Security: M3DA authentication and encryption == | + | == Security: M3DA authentication and encryption{{task-done}} == |
<br> | <br> | ||
Line 2,353: | Line 2,392: | ||
<code>require 'agent.provisioning'.</code><code>registration_password 'xy' (where x is first 4 numbers of S/N and y first 4 numbers of ENS)<br> </code> | <code>require 'agent.provisioning'.</code><code>registration_password 'xy' (where x is first 4 numbers of S/N and y first 4 numbers of ENS)<br> </code> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
|- | |- | ||
| Mihini_14.9.2 | | Mihini_14.9.2 | ||
Line 2,365: | Line 2,404: | ||
<code></code><code>require </code><code>'agent.provisioning'</code><code>.registration_password </code><code>'xy</code> | <code></code><code>require </code><code>'agent.provisioning'</code><code>.registration_password </code><code>'xy</code> | ||
− | | | + | | [[Image:Check.png|(coche)]] |
|- | |- | ||
| Mihini_14.9.3 | | Mihini_14.9.3 | ||
Line 2,397: | Line 2,436: | ||
<br> | <br> | ||
− | <br> | + | <br> |
− | = 0.8 features = | + | = 0.8 features {{task-done}} = |
{| border="1" | {| border="1" | ||
Line 2,449: | Line 2,488: | ||
| | | | ||
Use an update package with an extra parameter in the manifest file and check that extra param is correctly sent to app updater | Use an update package with an extra parameter in the manifest file and check that extra param is correctly sent to app updater | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
<br> | <br> | ||
Line 2,466: | Line 2,510: | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,471: | Line 2,520: | ||
| <br> | | <br> | ||
| | | | ||
− | Update - Package Download | + | Update - Package Download |
<br> | <br> | ||
| | | | ||
− | + | Agent receives a notification on DWL from the server, it download the package and send the knowlegement to the server. Check the agent log messages : : | |
+ | *UPDATE-INFO: Update Step: [4][dispatch_update] finished successfully | ||
+ | *UPDATE-INFO: Acknowledging update command to M3DA server | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
+ | |||
+ | |||
+ | | <br> | ||
+ | |- | ||
+ | | <br> | ||
+ | | | ||
+ | Update - Package Download Resume 1 | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | | ||
+ | |||
+ | Agent receives a notification on DWL from the server, Agent is starting download the package. During this time, kill the agent and then restart it. The agent shall restart the DL from the last received byte and not from the beginning. Check the agent log messages : | ||
+ | *UPDATE-INFO: Update Step: [4][dispatch_update] finished successfully | ||
+ | *UPDATE-INFO: Acknowledging update command to M3DA server | ||
+ | |||
+ | To know if the server supports or not the resumed download, launch the command in the terminal linux: | ||
+ | *curl -H Range:bytes=16- -I http://your.url.server : a 206 code must be displayed to support the resume download feature | ||
+ | |||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
+ | |||
+ | | <br> | ||
+ | |- | ||
+ | | <br> | ||
+ | | | ||
+ | Update - Package Download Resume 2 | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | | ||
+ | |||
+ | Agent receives a notification on DWL from the server, Agent is starting download the package. During this time, unplug the network cable (about 60s) so that the timout event will be trigged. The next download retry will be done by the resume DL feature ( don't forget to replug the network cable) which shall restart the DL from the last received byte and not from the beginning. Check the agent log messages : | ||
+ | *UPDATE-INFO: Update Step: [4][dispatch_update] finished successfully | ||
+ | *UPDATE-INFO: Acknowledging update command to M3DA server | ||
+ | |||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
+ | |||
+ | |||
+ | | <br> | ||
+ | |- | ||
+ | | <br> | ||
+ | | | ||
+ | Update - Package Download Resume 3 | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | | ||
+ | A C application receiving notification on DWL, shall pause and resume DL. If the server supports the partial content, the resume DL feature shall restart the DL from the last received byte and not from the beginning. Otherwise, it will restart the download from the beginning. Check the agent log messages : | ||
+ | *UPDATE-INFO: Update Step: [4][dispatch_update] finished successfully | ||
+ | *UPDATE-INFO: Acknowledging update command to M3DA server | ||
+ | |||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,492: | Line 2,615: | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,506: | Line 2,634: | ||
*Reboot Mihini | *Reboot Mihini | ||
*"Resume" the download of update file | *"Resume" the download of update file | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,519: | Line 2,652: | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,527: | Line 2,665: | ||
<br> | <br> | ||
− | |||
| | | | ||
Use the Airvantage sample in both lua and C to: <br> - start RA with appmon deamon <br> - install application <br> - make the RA crash (force stop) | Use the Airvantage sample in both lua and C to: <br> - start RA with appmon deamon <br> - install application <br> - make the RA crash (force stop) | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
| <br> | | <br> | ||
Line 2,540: | Line 2,682: | ||
<br> | <br> | ||
− | |||
| | | | ||
TBC: Disconnect the device from the network and start a remote application installation. The download will fail and the first retry shall occur after 1minute, the second shall occur only after 30 minutes and the last one after one hour. | TBC: Disconnect the device from the network and start a remote application installation. The download will fail and the first retry shall occur after 1minute, the second shall occur only after 30 minutes and the last one after one hour. | ||
<br> | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | [[Image:Check.png]] | ||
+ | <br> | ||
+ | |||
| <br> | | <br> | ||
Line 2,556: | Line 2,703: | ||
| | | | ||
Send a command to an unknown asset. Check that the message has been acknowledged. | Send a command to an unknown asset. Check that the message has been acknowledged. | ||
+ | |||
<br> | <br> | ||
− | | | + | | [[Image:Check.png]] |
− | + | <br> | |
− | + | ||
− | + | ||
− | + | ||
<br> | <br> | ||
− | |||
− | |||
− | |||
| <br> | | <br> | ||
Line 2,665: | Line 2,807: | ||
|} | |} | ||
− | = REST API | + | = REST API {{task-done}} = |
<br> | <br> | ||
Line 2,835: | Line 2,977: | ||
|} | |} | ||
− | == Application Container | + | == Application Container {{task-done}} == |
{| border="1" | {| border="1" | ||
Line 2,873: | Line 3,015: | ||
<br> | <br> | ||
− | *Perform a GET on application | + | *Perform a GET on application |
*Check that returned list match with installed application list | *Check that returned list match with installed application list | ||
| <br> | | <br> | ||
[[Image:Check.png|(coche)]] | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | [LBA] <br>The test was: "Perform a GET on application/ "<br>The [http://wiki.eclipse.org/Mihini/Rest Mihini REST] spec was also mentionning "application/"<br> | ||
+ | |||
+ | However when I do a GET on "application/", it failed with "status: 404 No handler found for application/"<br> | ||
+ | |||
+ | On the contrary, "GET on application" works correctly. | ||
+ | |||
+ | I read appcon code, feature export to REST confirm it is done to support "application" without trailing /.<br> | ||
+ | |||
+ | Reading some forum topics and speaking about it here and there, I think supporting only "GET on application" is OK for now.<br> | ||
+ | |||
+ | We may want to support both for next release, but the question can be extended to any REST URL . TBD.<br> | ||
+ | |||
+ | For now, I've edited this test and [http://wiki.eclipse.org/Mihini/Rest Mihini REST] spec to conform to current behavior, and kept the test result as succesful.<br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | <br><br> | ||
+ | |||
+ | <br><br> | ||
|- | |- | ||
Line 2,893: | Line 3,055: | ||
<br> | <br> | ||
− | *Perform a POST on application | + | *Perform a POST on application |
*Check error is returned | *Check error is returned | ||
Line 2,919: | Line 3,081: | ||
[[Image:Check.png|(coche)]]<br> | [[Image:Check.png|(coche)]]<br> | ||
− | [RPE]<br> | + | [RPE]<br> |
The output is correct but I am not completly sure about the variable "appname" (with or without Rest), it contains "2" here... There is a bunch of code in agent/agent/appcon.lua which converts a string coming from the appmon daemon to a table. Please check if this is a bug or not | The output is correct but I am not completly sure about the variable "appname" (with or without Rest), it contains "2" here... There is a bunch of code in agent/agent/appcon.lua which converts a string coming from the appmon daemon to a table. Please check if this is a bug or not | ||
− | [LBA] the field "appname" comes from appmon_daemon, and it would be better if it was named "appid" indeed. So I don't think this is a bug, likely a badly named variable. As this variable is already used in ApplicationContainer and that the issue is only seen when displaying the application status to user, I don't think it's worth renaming it for now.<br>We can open an issue for 0.10 I guess, so I set this test as successful.<br> | + | [LBA] |
+ | |||
+ | the field "appname" comes from appmon_daemon, and it would be better if it was named "appid" indeed. So I don't think this is a bug, likely a badly named variable. As this variable is already used in ApplicationContainer and that the issue is only seen when displaying the application status to user, I don't think it's worth renaming it for now.<br>We can open an issue for 0.10 I guess, so I set this test as successful.<br> | ||
|- | |- | ||
Line 2,963: | Line 3,127: | ||
*Check that application is now running | *Check that application is now running | ||
− | | | + | | |
+ | <br> | ||
+ | |||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | [LBA] The Body must be set to "{}" (empty JSON payload), but the body can't be empty like stated in the Rest doc.<br> | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 2,981: | Line 3,151: | ||
*Check that an error is returned | *Check that an error is returned | ||
− | | | + | | |
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,000: | Line 3,172: | ||
*Check that application is now stopped | *Check that application is now stopped | ||
− | | | + | | |
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | [LBA] | ||
+ | |||
+ | The Body must be set to "{}" (empty JSON payload), but the body can't be empty like stated in the Rest doc. | ||
+ | |||
+ | <br> | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,018: | Line 3,198: | ||
*Check that an error is returned | *Check that an error is returned | ||
− | | | + | | [[Image:Check.png|(coche)]] <br> |
|- | |- | ||
| <br> | | <br> | ||
Line 3,034: | Line 3,214: | ||
<br> | <br> | ||
− | *Perform a PUT on application/testapp/configure with JSON payload | + | *Perform a PUT on application/testapp/configure with JSON payload "true" |
*Check that autostart parameter has been modified | *Check that autostart parameter has been modified | ||
− | | | + | | |
+ | [[Image:Check.png|(coche)]] | ||
+ | LBA | ||
+ | |||
+ | I used ` curl -X PUT -d "true" http://localhost:8357/application/toto/configure ` | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,056: | Line 3,241: | ||
*Check that an error is returned | *Check that an error is returned | ||
− | | | + | | [[Image:Check.png|(coche)]] <br> |
|} | |} | ||
− | == Update == | + | == Update {{task-done}} == |
+ | |||
+ | the specification of REST API is here http://wiki.eclipse.org/Mihini/Rest | ||
{| width="845" border="1" | {| width="845" border="1" | ||
Line 3,079: | Line 3,266: | ||
! | ! | ||
− | Result | + | Result |
<br> | <br> | ||
Line 3,089: | Line 3,276: | ||
*Perform a POST on update/ with HTTP payload containing the binary application (tar) | *Perform a POST on update/ with HTTP payload containing the binary application (tar) | ||
*Check that application has successfully been installed | *Check that application has successfully been installed | ||
+ | => ex : curl -i -X POST --data-binary @/your/path/to/file.tar localhost:8357/update/ | ||
+ | <br> | ||
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
| <br> | | <br> | ||
Line 3,097: | Line 3,291: | ||
*Perform a POST on update/ without payload | *Perform a POST on update/ without payload | ||
*Check that an error is returned | *Check that an error is returned | ||
+ | => ex : curl -i -X POST --data-binary @ localhost:8357/update/ | ||
+ | <br> | ||
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
+ | |||
| <br> | | <br> | ||
Line 3,105: | Line 3,307: | ||
*Perform a PUT on update/ with HTTP payload containing the binary application (tar) | *Perform a PUT on update/ with HTTP payload containing the binary application (tar) | ||
*Check that an error is returned | *Check that an error is returned | ||
+ | |||
+ | => ex : curl -i -X PUT --data-binary @/your/path/to/file.tar localhost:8357/update/ | ||
+ | <br> | ||
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
| <br> | | <br> | ||
Line 3,113: | Line 3,323: | ||
*Perform a UPDATE on update/ with HTTP payload containing the binary application (tar) | *Perform a UPDATE on update/ with HTTP payload containing the binary application (tar) | ||
*Check that an error is returned | *Check that an error is returned | ||
+ | => ex : curl -i -X UPDATE --data-binary @/your/path/to/file.tar localhost:8357/update/ | ||
+ | <br> | ||
− | |||
− | |||
− | |||
− | |||
| | | | ||
− | + | [[Image:Check.png|(coche)]] | |
− | + | ||
+ | |||
| <br> | | <br> | ||
|- | |- | ||
| <br> | | <br> | ||
+ | |||
+ | |||
| Status | | Status | ||
| | | | ||
*Perform a GET on update/ without payload | *Perform a GET on update/ without payload | ||
*Check that returned status matches with expected status | *Check that returned status matches with expected status | ||
+ | => ex : curl -i -X GET localhost:8357/update/ | ||
+ | |||
+ | <br> | ||
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
| <br> | | <br> | ||
|} | |} | ||
− | = GPIO | + | = GPIO {{task-done}} = |
For all the GPIO tests, here are the prerequisites:<br> | For all the GPIO tests, here are the prerequisites:<br> | ||
Line 3,141: | Line 3,360: | ||
*Start mihini agent / application with root user rights to be able to access to the GPIO.<br><br>Here is a hardware setup to test the GPIO:<br>TBD<br> | *Start mihini agent / application with root user rights to be able to access to the GPIO.<br><br>Here is a hardware setup to test the GPIO:<br>TBD<br> | ||
− | == | + | == GPIO Lib {{task-done}} == |
{| width="1024" border="1" | {| width="1024" border="1" | ||
Line 3,180: | Line 3,399: | ||
<br> | <br> | ||
− | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,196: | Line 3,414: | ||
<br> | <br> | ||
+ | <br> | ||
− | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,212: | Line 3,430: | ||
[[Image:Check.png|(coche)]] | [[Image:Check.png|(coche)]] | ||
− | <br> | + | <br> |
− | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,226: | Line 3,443: | ||
| | | | ||
− | + | [[Image:Check.png|(coche)]] | |
− | <br> | + | <br> |
− | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,247: | Line 3,463: | ||
<br> | <br> | ||
− | |||
|} | |} | ||
<br> | <br> | ||
− | == GPIO devicetree handler | + | == GPIO devicetree handler {{task-done}} == |
− | + | <br> | |
Call devicetree.init() before doing any devicetree test.<br> | Call devicetree.init() before doing any devicetree test.<br> | ||
Line 3,286: | Line 3,501: | ||
*Call devicetree.get("sytem.gpio.id")<br> | *Call devicetree.get("sytem.gpio.id")<br> | ||
− | | <br> | + | <br> |
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,295: | Line 3,516: | ||
*Call devicetree.set("system.gpio.id", 0) then devicetree.set("system.gpio.id", 1) | *Call devicetree.set("system.gpio.id", 0) then devicetree.set("system.gpio.id", 1) | ||
− | | <br> | + | <br> |
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
| GPIO device tree register / notify<br> | | GPIO device tree register / notify<br> | ||
| | | | ||
− | * Connect LED to some device GPIO and connect push button to another device GPIO<br> | + | * Connect LED to some device GPIO and connect push button to another device GPIO<br> |
− | *Call devicetree.set("system.gpio.settings.id", {direction="in", edge="both", activelow=0} on GPIO connected to the button<br> | + | *Call devicetree.set("system.gpio.settings.id", {direction="in", edge="both", activelow=0}) on GPIO connected to the button<br> |
− | *Call devicetree.register on the GPIO connected to the button (path: system.gpio.$ID_BUTTON) , for the hook function, you can use:<br>local function hook(notif)<br> devicetree.set("system.gpio.$ID_LED", notif["system.gpio.$ID_BUTTON"])<br>end<br> | + | *Call devicetree.register on the GPIO connected to the button (path: system.gpio.$ID_BUTTON) , for the hook function, you can use:<br>local function hook(notif)<br> devicetree.set("system.gpio.$ID_LED", notif["system.gpio.$ID_BUTTON"])<br>end<br> |
*Check LED mimics button actions<br><br> | *Check LED mimics button actions<br><br> | ||
− | | <br> | + | <br> |
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
+ | |||
|- | |- | ||
| <br> | | <br> | ||
Line 3,313: | Line 3,546: | ||
*Do a get on system.gpio.available, checks all system GPIO are returned as a single leaf value.<br> | *Do a get on system.gpio.available, checks all system GPIO are returned as a single leaf value.<br> | ||
− | | <br> | + | <br> |
+ | |||
+ | | | ||
+ | [[Image:Check.png|(coche)]] | ||
+ | |||
+ | <br> | ||
+ | |||
|} | |} | ||
<br> | <br> | ||
− | = | + | = Unittests (Auto) {{task-done}} = |
All the following tests shall have been successfully run on the release tag. | All the following tests shall have been successfully run on the release tag. |
Latest revision as of 13:06, 26 August 2013
|
Contents
- 1 Results and Status
- 2 Miscellaneous [done]
- 3 Config Store (agent.config ) [done]
- 4 Server Connection (agent.srvcon) [done]
- 5 Software Update [done]
- 6 Application Container [done]
- 7 Time[done]
- 8 Serial Framework (modbus) [done]
- 9 Messaging [done]
- 10 Migration Helper [done]
- 11 M2M Server[done]
- 12 0.8 features [done]
- 13 Security [done]
- 14 REST API [done]
- 15 GPIO [done]
- 16 Unittests (Auto) [done]
Results and Status
Device(s) used for tests | RaspberryPi for GPIO tests, regular PC, |
Status ( ok tests / total tests) | 15 / 15 suites |
Comments | No critical bug found. |
Final status with date | OK, 19/08/2013 |
Miscellaneous [done]
Config Store (agent.config ) [done]
Test ID
|
Test Purpose
|
Test process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_2.1
|
Data Reading
|
Test reading whole config, command arg = agent.config.get(""). Verify execution.
|
|
|
Mihini_2.2
|
Data Reading
|
Test reading sub part of config, command arg = agent.config.server. Verify execution.
|
|
|
Mihini_2.3
|
Data Reading
|
1- Modify some config entry, read it using ReadNode command,
|
|
|
Mihini_2.5
|
Test default()
|
Call default (agent.config.default()). Verify that default values are restored.
|
|
|
Mihini_2.6
|
Test diff()
|
Change some values in agent.config. Verify that the differences are correctly reported in the Lua shell.
|
|
|
Server Connection (agent.srvcon) [done]
Test ID
|
Test Purpose
|
Test process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_3.0.1
|
Connection policy: Cron
|
agent.config.server.autoconnect = { cron="mm hh dd MM YY"}. Reboot and verify connection according to cron entry.
|
|
|
Mihini_3.0.2
|
Connection policy: On reboot
|
agent.config.server.autoconnect = { onboot = 300}. Reboot and verify connection ~300 seconds after reboot.
|
|
|
Mihini_3.0.3
|
Connection policy: Periodic
|
agent.config.server.autoconnect = { period = 2 }. Reboot and verify a periodic connection every 2 minutes.
|
|
Commands (agent.devman.cmds) [done]
This chapter must be done using platform jobs: retrieve data, apply settings, send command.
Data Writing [done]
Network Manager (agent.netman) [done]
Software Update [done]
Application Container [done]
(Linux Only)
Test ID
|
Test Purpose
|
Test process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_6.1
|
Application monitor daemon on Linux: setup
|
Run appmon_daemon before starting RA.
|
|
|
Mihini_6.2
|
Application monitor app restart delay
|
test application with run function that reports error "immediately", check restart delay
|
|
|
Mihini_6.3
|
Application Container and Application monitor communication
|
launch appmon, RA, add std apps in RA.AppCon, kill RA, check apps are still running, restart RA.
|
|
|
Time[done]
Serial Framework (modbus) [done]
Messaging [done]
Migration Helper [done]
Test ID
|
Test Purpose
|
Test process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_11.1 | Test migration helper default script |
Compile a brand new runtime, start it,
|
||
Mihini_11.2
|
Test migration helper without migration code
|
|
|
|
Mihini_11.3
|
Test migration helper with migration code written in Lua
|
|
|
|
Mihini_11.4
|
Test migration helper with migration code written in C
|
|
|
|
M2M Server[done]
Test ID
|
Test Purpose
|
Test process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_13.0.1
|
Racon Lua sample on Linux
|
Build and run agent. Run Lua sample in standalone Lua VM. Verify execution.
|
|
M2M Server APIs [done]
Device Status Access (N/A) [done]
Test ID
|
Test Purpose
|
Test Process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_14.4.1
|
Poll & Notify
|
From an application in the Mihini, Poll the device status.
|
|
NA |
Mihini_14.4.2
|
Radio Information
|
Display all data defined in the M3DA Dev Tree and check they are relevant.
|
|
NA |
Mihini_14.4.3
|
Router Information
|
Display all data defined in the M3DA Dev Tree and check they are relevant.
|
|
NA |
Mihini_14.4.4
|
Device Versioning
|
Display all data defined in the M3DA Dev Tree and check they are relevant.
|
|
NA |
Mihini Configuration Access [done]
Test ID
|
Test Purpose
|
Test Process
|
Automatic test
|
Result
|
---|---|---|---|---|
Mihini_14.5.1
|
Set, Poll & Notify
|
Change some RA data using the TreeMgr
|
test_devicetree_RSSI()
|
|
Factory Reset APIs [done]
Mihini Updates [done]
Security: M3DA authentication and encryption[done]
0.8 features [done]
Test ID
|
Test Purpose
|
Test Process
|
Result
| |
---|---|---|---|---|
|
AppCon - Provide a watchdog library for user apps
|
TBD: time before killing app
|
NA - Removed from 0.8 and 0.9 scope.
| |
|
RA C API Implementation - Airvantage Asset Update API
|
Use an update package with an extra parameter in the manifest file and check that extra param is correctly sent to app updater
|
|
|
|
Airvantage Lua API - make asset update result to be sent asynchronously
|
Create an asset in which we attached a callback function. The latter have to return "async" and then that is a part of this asset which calls sendUpdateResult() to send a asynchronous response to RA
|
|
|
|
Update - Package Download
|
Agent receives a notification on DWL from the server, it download the package and send the knowlegement to the server. Check the agent log messages : :
|
|
|
|
Update - Package Download Resume 1
|
Agent receives a notification on DWL from the server, Agent is starting download the package. During this time, kill the agent and then restart it. The agent shall restart the DL from the last received byte and not from the beginning. Check the agent log messages :
To know if the server supports or not the resumed download, launch the command in the terminal linux:
|
|
|
|
Update - Package Download Resume 2
|
Agent receives a notification on DWL from the server, Agent is starting download the package. During this time, unplug the network cable (about 60s) so that the timout event will be trigged. The next download retry will be done by the resume DL feature ( don't forget to replug the network cable) which shall restart the DL from the last received byte and not from the beginning. Check the agent log messages :
|
|
|
|
Update - Package Download Resume 3
|
A C application receiving notification on DWL, shall pause and resume DL. If the server supports the partial content, the resume DL feature shall restart the DL from the last received byte and not from the beginning. Otherwise, it will restart the download from the beginning. Check the agent log messages :
|
|
|
|
Add timeout management in EMP libs
|
make an asset command blocking for more than 60 seconds
|
|
|
|
Update - Download: support user notification and request during download
|
|
|
|
|
Update - check space left before archive extraction
|
Create a tar.gz file which unzipped file is greater than free space disk and give it to updater. The updater shall return an error: file too long
|
|
|
|
Handle the case Mihini reboot while apps were running
|
Use the Airvantage sample in both lua and C to:
|
|
|
|
Update - Add elastic retries in update package download mecanism
|
TBC: Disconnect the device from the network and start a remote application installation. The download will fail and the first retry shall occur after 1minute, the second shall occur only after 30 minutes and the last one after one hour.
|
|
|
|
Message dispatch: no ack is sent when msg from srv targets unregistred asset - M3DA
|
Send a command to an unknown asset. Check that the message has been acknowledged.
|
|
|
Security [done]
REST API [done]
Device Tree [done]
Application Container [done]
Test ID
|
Test Purpose
|
Test Process
|
Result
|
---|---|---|---|
|
List applications |
Prerequisite:
Tests steps:
|
[LBA] However when I do a GET on "application/", it failed with "status: 404 No handler found for application/" On the contrary, "GET on application" works correctly. I read appcon code, feature export to REST confirm it is done to support "application" without trailing /. Reading some forum topics and speaking about it here and there, I think supporting only "GET on application" is OK for now. We may want to support both for next release, but the question can be extended to any REST URL . TBD. For now, I've edited this test and Mihini REST spec to conform to current behavior, and kept the test result as succesful.
|
|
|
Prerequisite:
Tests steps:
|
|
|
Status |
Prerequisite:
Tests steps:
|
[RPE] The output is correct but I am not completly sure about the variable "appname" (with or without Rest), it contains "2" here... There is a bunch of code in agent/agent/appcon.lua which converts a string coming from the appmon daemon to a table. Please check if this is a bug or not [LBA] the field "appname" comes from appmon_daemon, and it would be better if it was named "appid" indeed. So I don't think this is a bug, likely a badly named variable. As this variable is already used in ApplicationContainer and that the issue is only seen when displaying the application status to user, I don't think it's worth renaming it for now. |
|
|
Prerequisite:
Tests steps:
|
|
|
Start |
Prerequisite:
Tests steps:
|
[LBA] The Body must be set to "{}" (empty JSON payload), but the body can't be empty like stated in the Rest doc. |
|
|
Prerequisite:
Tests steps:
|
|
|
Stop |
Prerequisite:
Tests steps:
|
[LBA] The Body must be set to "{}" (empty JSON payload), but the body can't be empty like stated in the Rest doc.
|
|
|
Prerequisite:
Tests steps:
|
|
|
Configure |
Prerequisite:
Tests steps:
|
I used ` curl -X PUT -d "true" http://localhost:8357/application/toto/configure ` |
|
|
Prerequisite:
Tests steps:
|
|
Update [done]
the specification of REST API is here http://wiki.eclipse.org/Mihini/Rest
Test ID
|
Test Purpose
|
Test Process
|
Result
| |
---|---|---|---|---|
|
Local update |
=> ex : curl -i -X POST --data-binary @/your/path/to/file.tar localhost:8357/update/
|
|
|
|
|
=> ex : curl -i -X POST --data-binary @ localhost:8357/update/
|
|
|
|
|
=> ex : curl -i -X PUT --data-binary @/your/path/to/file.tar localhost:8357/update/
|
|
|
|
|
=> ex : curl -i -X UPDATE --data-binary @/your/path/to/file.tar localhost:8357/update/
|
|
|
|
Status |
=> ex : curl -i -X GET localhost:8357/update/
|
|
|
GPIO [done]
For all the GPIO tests, here are the prerequisites:
- Use a device with system conforming to GPIO lib requirements (see download.eclipse.org/mihini/api/lua/gpio.html )
RaspberryPI with Raspbian system is a good candidate.
- Build GPIO targets:
GPIO targets are not built by default, do it by typing:
make gpio agent_treemgr_gpio
- Start mihini agent / application with root user rights to be able to access to the GPIO.
Here is a hardware setup to test the GPIO:
TBD
GPIO Lib [done]
Test ID
|
Test Purpose
|
Test Process
|
Result
|
---|---|---|---|
|
GPIO read |
|
|
|
GPIO write |
|
|
|
GPIO register / notify |
|
|
|
GPIO automatic configuration |
|
|
|
GPIO listing APIs: |
|
|
GPIO devicetree handler [done]
Call devicetree.init() before doing any devicetree test.
Test ID |
Test Purpose
|
Test Process
|
Result
|
---|---|---|---|
|
GPIO device tree read |
|
|
|
GPIO device tree write |
|
|
|
GPIO device tree register / notify |
|
|
|
GPIO device tree listing |
|
|
Unittests (Auto) [done]
All the following tests shall have been successfully run on the release tag.
Test ID
|
Environement
|
Target x86 | Target x86_64 |
---|---|---|---|
bysant | lua framework | |
|
luatobin | lua framework | |
|
posixsignal | lua framework | |
|
rpc | lua framework | |
|
sched | lua framework | |
|
persist | lua framework | |
|
timer | lua framework | |
|
bysant | agent | |
|
luatobin | agent | |
|
posixsignal | agent | |
|
rpc | agent | |
|
sched | agent | |
|
persist | agent | |
|
crypto | agent | |
|
treemgr | agent | |
|
config | agent | |
|
update | agent | |
|
stagedb | agent | |
|
monitoring | agent | |
|
asset_tree.lua | racon | |
|
airvantage.lua | racon | |
|
devicetree.lua | racon | |
|
sms.lua | racon | |
|
system.lua | racon | |
|
emp.lua | racon | |
|
dset_test (natif) | racon | |
|
emp_test (natif) | racon | |
|
av_test (natif) | racon | |
|
sms_test (natif) | racon | |
|
sys_test (natif) | racon | |
|
updatetest (natif) | racon | |
|
dt_test (natif) | racon | |
|