aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-01-23Add a debug option for the native test launchersandbox/claneys/wipRomain Forlot1-0/+9
This flags set the shell script debugging on and output every line it executes. Change-Id: Iabf3a7f2ec2b72a271422367e7d820270987b56c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2019-01-23Handle event in core bindingRomain Forlot4-87/+97
Prefers to handle the events reception by the binding, in C, rather than using the LUA interpreter to avoid race condition on the LUA context. Because we are waiting events in LUA context using binder call sync, when the event is received then 2 threads operate simultaneously on LUA context, the waiting event thread and the receiving event thread. Bug-AGL: SPEC-2135 Change-Id: Ied0a78a61263b8fd41305969c636a491c6bb0295 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2019-01-18Git submodules migration to separate libraryRomain Forlot5-18/+3
Operates the migration to use the afb-helpers and controller libraries and find them as packages not only link against them. - Remove the submodules - Remote the target link on target - Add dependencies to afb-helpers and appcontroller packages. Change-Id: I79da3a84bc1ee020924bb51f0eaed85a99ba7288 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-22docs: add yaml bookguppy_6.99.4guppy/6.99.46.99.4Sebastien Douheret1-0/+46
Change-Id: I2717aceeb55bc2a1ddae95a8cc4d1bb01f48f142 Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-17Cleaning redundant link option specifiedguppy_6.99.3guppy/6.99.36.99.3Romain Forlot1-1/+0
This link is already specified "aft" target and should not be at a project level. Change-Id: I24fa930a92d450e9f488894863cccf2a01e5cbdd Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-11little memleak fix.Romain Forlot1-1/+4
Change-Id: I9288ef2f2f9d37de993164dd454fc75b69f44abf Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-11Handle more argument's type when making a subcallRomain Forlot1-1/+5
Calling an api's verb may require to use other things than a JSON object, so this add the possibility to use the other JSON types: string, number or boolean. Change-Id: If95aa35241ea3b11e88e82e7dbdd3e462b4f9eff Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-11Clean way to wait for an api's eventRomain Forlot3-57/+122
Modify the way to wait for an event. Here we call synchronously a verb of the test api that will end when a timeout expires or when the reception of the event ends the request Useless set up of verbosity to debug for the monitoring API. "push_after" messages could be caught without setting up this. Bug-AGL: SPEC-2003 Depends-On: https://gerrit.automotivelinux.org/gerrit/#/c/18583/ Change-Id: I24af6bae6a9aa0f70f3b78304134a65e09f12a58 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-07Limit the monitoring to events not to the requestsRomain Forlot1-2/+2
Improve the accuracy of the monitoring trace filtering, spying the requests isn't needed anymore. Change-Id: I0177346c27914df99027cb0324e20ee43e702e8d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-11-30Add new assert verbguppy_6.99.2guppy/6.99.26.99.2Frederic Marec1-1/+1
Add assertIsTrue verb who allow table and string argument Bug-AGL: SPEC-1983 Change-Id: I8a13b7cdd8d4b841c37e732ffa225b4b9822fad8 Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
2018-11-30Bump app-controller-submoduleFrederic Marec2-0/+2
Bump app-controller-submodule Fix ctrlConfig following app-controller-submodule modification Change-Id: Ifd93d20bbff336420f478229f640d8304b502fc4 Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
2018-11-30Move autobuild to top treeFrederic Marec2-26/+42
Bug-AGL: SPEC-495 Change-Id: I584b5fb287bef3bb6a466000d5c8aeb167fb7690 Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
2018-11-21Change exit message depending on exit reasonguppy_6.99.1guppy/6.99.16.99.1Romain Forlot1-1/+6
Clarify the exit message in case of binder timeout since the default timeout is 3 seconds, it may not be sufficient. As the timeout command, return exit 124 in case of timeout and 128+9 when killed (signal 9). Change-Id: Ia6197c65a32b6fe547fc18115e8c21f572cfcc2b Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-11-08Packaging: Set project version using command-lineRomain Forlot2-2/+3
When packaging, the build environment doesn't clone the git repository but instead use an archive and so we lose the git repository's information. This is a workaround to set the project version using the packaging system. Change-Id: I3e8edc197a12f455f4f1cc24bc452feb146bab6c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-11-07Change .gitmodules following submodule migrationFrederic Marec1-3/+0
Remove app-template in .gitmodules Change-Id: Ia02965eec8e5a78533316816e8645367499b6467 Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
2018-11-06Improves packaging debian rulesRomain Forlot5-100/+25
Change rules to be more sustainable and maintainable. Remove the patch that isn't needed anymore since the app-templates has been migrated to a cmake module. Fix also wrong descriptions Change-Id: I789b18d8238015bd9e0350ae39136002b10bed51 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-31Fix packaging for native buildRonan Le Martret4-4/+3
- *.pc file must have ascii charset - remove gcc dependency for deb package - Fix *.pc file packaging for deb package - set CMAKE_INSTALL_LIBDIR in debian.rules Change-Id: I448aedcdb6fd21d662416ac72148d98da5e05ac3 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
2018-10-31Docs reorganization and updateRomain Forlot23-617/+672
Docs reorganization and update using the latest afb-test improvments and try to make it clearer. Change-Id: If022cdb46364ef250361bdcd420d45b360f10a2e Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-31Migrate app-templates to CMake moduleRomain Forlot3-4/+6
Bug-AGL SPEC-1682 Change-Id: Icf7eb9765483e1cf1c74a9d64cdb0178f773936d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-26Adjust lib dependenciesRomain Forlot2-2/+1
This ensure that the project build under debian like distro and also rpm based distributions. Change-Id: I1c0b49163253f5c9ad06a2cdbc6c7b1b8b739f84 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-26Add packaging materialsRomain Forlot9-0/+243
Files used by an OBS server to be able to build deb and rpm packages. The afb-test binding could be then used in a native environment. Change-Id: Ifd5ab363c90269bed949ff63315d228017de7d05 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-24Clean the code.Romain Forlot1-6/+0
Change-Id: I4111042fe0bb1084c9dcd1b978fa96163bd40f9c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-24Adds test set markers around each test file launchRomain Forlot1-1/+8
Fix wrong test case markers order... Result has to be after the test case ending. Change-Id: Iebd604a5d25ef5e12aae7c6be7aaff4daad3d0b9 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-23Add Lava markers on output and select test setRomain Forlot3-32/+110
The launch scripts now allow you to select a verb from the test api to only launch that verb instead of all. Also using the verb's argument {'lavaOutput':true}, the test framework adds specific Lava markers. Reformat the script to accept options instead of only positionnal arguments Change-Id: I181407ebb192eb67e06d2ed95ee239d6f1a523f3 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-22Bump submodulesRomain Forlot2-0/+0
Submodule app-controller-submodule d6eb01e..ce07538: > Abort if one required API is missing > Correct an error when no plugins are defined > Decrease print level when no onload action > Add a 'params' fields for controller plugins > Call wasn't done correctly in 'CtlConfigExec' > Add ctlPlugins array to the ctlConfig structure > Add an Init step to the plugins load Submodule conf.d/app-templates 52ae181..e7fd1da: > Select the test set to run > Always use wgt when talking about widget > Minor fixes > Improved test widget launcher script > Set default link flags to the target property > Use a custom test-config.xml file for test widget > cmake: coverage: disable compiler optimization for COVERAGE build > Adding warning message to migrate on CMake module > common.cmake: fixed erroneous search path for os-release > Fix: missing gcov symbol in compiled binaries > app-templates doc: Changed doc to fit new format. > Update Docs Change-Id: I7b21414e465a8377c031cfd54f6170051d4312de Signed-off-by: Romain Forlot <romain.forlot@iot.bzh> Submodule conf.d/app-templates 0f25ab2..: Change-Id: Ief3ca4ba2e7a4ccf5a3d730a0f1656454e2853df Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-22Be able to launch several verb in a rowRomain Forlot1-2/+0
You must not specify the _AFT.exitAtEnd in your LUA files if you want to be able to chain test verb calls. Else it will exit during the file which has specified the exitAtEnd call. Change-Id: I3e7f4c6efadcbada426176f51bd709413f1c7405 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-22Improve native launching methodRomain Forlot2-6/+32
This will launch every verbs defined in the test configuration file instead of only the hardcoded launch_all_tests verbs Change-Id: Ibc890660cd2209516195ad0f3cf2069e2612b0d4 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-22Fix: wrong output file specified using single argRomain Forlot1-1/+1
Copy/paste error... Change-Id: Iac3a96fed518171cd5a6963145296429368782fa Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-10Clean the base afb-test binding's dependenciesRomain Forlot1-13/+1
Clean the base afb-test binding's dependencies on external apis. This will be needed to run it as a stand-alone service in the future. Change-Id: Ia708c4bfd6c674279b62df2c8fc38464567f23e8 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-10Shellcheck: protect variable against whitespaceRomain Forlot1-13/+13
This avoid some side effects caused by empty variable value. Change-Id: If3134dfe561d9b12b7429dbe511f63f8fdb376dc Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-10Improve exit output messageRomain Forlot2-8/+22
Display the tests results depending on the chosen format or inform the user of the error and displaying in that case the binder(s) log output. Change-Id: I2437d3b59ef5b864c8e41749b16bf3ed738c9caa Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-09Test the LockWait featureRomain Forlot1-0/+12
This commit adds a test that ensures that the timeout waiting an event expires correctly and that we correctly wait for the indicated time. Change-Id: Ic9aeb32d09b45af0d75c8c51fa421b8f5a25f39c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-09Unify test launch between target and nativeRomain Forlot4-26/+24
On a target, the binder process name is taken from the widget "id", now the native launcher script also launches the binder using the widget "id". As the controller searches its configuration file using the binder process middle name we need to differentiate between both "id" otherwise the wrong configuration file is used. The commit renames configuration file according to the new "id". Change-Id: Icd01abe21ddee562518c7f822baca8b098bbb55e Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-09Update documentationRomain Forlot4-19/+109
This adds some instructions to build test widget using SDK and basic instruction on how to test natively on your host as well as on a target board. Change-Id: I077fda253336883bec3cd0101e61467565d679ff Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-08get rid of afb-definitionsClément Bénier3-54/+54
directly use app framework binder api v3 Change-Id: If2587b074ab5215036bce68ff5b42c398512af0d Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
2018-10-03Avoid to kill anything when no config file foundRomain Forlot1-0/+3
Display an error and exit if no JSON test configuration file found. Else it would kill your user session. Change-Id: Ica934cfda02baca3844d15d2134d295055c372da Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-26Separation between CB and classic test functionsRomain Forlot1-6/+15
Without that separation you need to specify a nil argument before your setUp and tearDown functions in your test definition. Change-Id: Ic9ef9c1928fa658b15eceb43a464243d246f9b79 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-25Rename test service api to be more discriminant.Romain Forlot5-12/+12
Using aftest and aft-aftest api name to self test was difficult because of searching file using the binder process name which could be the same although api name were diffirent. Change-Id: I20ef554d54ddc1cb5bd169d462558d78f2769668 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-25Assert that an event hasn't been receivedRomain Forlot1-0/+35
Change-Id: Icc1bef7f87f55a377cacfb590e1d371d9f6a1511 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-25Script for both native and target launchRomain Forlot6-56/+151
Change-Id: I975c6c8e5eb41d7197ee7992762799b72d7bcb41 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-16Separate output filesguppy_6.90.0guppy/6.90.06.90.0Romain Forlot1-3/+20
Use one output file by test suite executed with the according extension depending upon the output type chosen. Change-Id: I1804287fc56e4ee2b6df9f672d94553a3d947d49 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-09-07Use controller new behavior that add objectsflounder_5.99.6flounder/5.99.65.99.6Romain Forlot2-32/+5
Adding objects to events section using the controller function to create a mock-api. Change-Id: Ic538c02f08b2f4f3376ffa6e9b9ffcbef1592599 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Silence all outputs of kill commandflounder_5.99.5flounder/5.99.55.99.5Romain Forlot1-1/+1
Because may the users doesn't set to exit the binder at the end in the LUA so it has to be killed by the script. Then every case are covered. Change-Id: I3967b296ca8eafc65bb8109c57d2b8b2de582583 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Reset context functions between test filesRomain Forlot1-20/+28
This reset the contextual functions that trigger before and after tests between each files loaded. Then context is set by file and not by the API's verb of the test binding. This is more an intuitive behavior. Change-Id: I76716dd19d23b715690b74d9b67253dffd01c12d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Update gitignoreRomain Forlot1-1/+1
Change-Id: I895ca559a1ebf313c25252b38883f54d45da8bd8 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Lower CMake version requirementRomain Forlot1-1/+1
Change-Id: I8ac2a69aeb1f6cf6daeb560bd38f92c411dbaf58 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Make afTest test itself correctlyRomain Forlot2-20/+21
For native build and test purposes you need to start 2 bindings to be able to test correctly the afb-test binding. The first one will answer on the main API name afTest and the second to launch the test. This is the closest test case similar to a test on a target board. Change-Id: I6b961c0e41cdd3eef387b7f5156ed334e8f6c3de Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30Don't crash if lua test files aren't foundRomain Forlot1-7/+13
This protect the file read to avoid crashing if no file has been found and display an error. Protect with double-quote the path to avoid 'find' error if space are part of the path. Change-Id: I3a27ca9d2566edd5f1b9cd301153e0ab735a177a Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-08-30afb-test doc: Updated doc.CorentinLGS3-33/+263
-Changed 0_ProjectTree.md to only show what's interesting. -Made further explanations on how to organize and integrate test files. -Updated 2_LaunchTheExample.md, now explains the new way to launch tests. -Also added the result of a test launched on a target. -Added a configuration example in 1_BindingConfiguration.md . Change-Id: I4c4ed1cef5e914a8179a6823489791e6756106b6 Signed-off-by: CorentinLGS <corentinlgs@gmail.com>
2018-08-29Native test script launcher improvmentsRomain Forlot2-4/+6
Remove the debug log messages. Display the results of tests at the end. Change-Id: I38ec1a6807a8e7de483545fd3346327fe1847f73 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>