diff options
Diffstat (limited to 'conf.d/project/lua.d/low-can-tests.lua')
-rw-r--r-- | conf.d/project/lua.d/low-can-tests.lua | 59 |
1 files changed, 42 insertions, 17 deletions
diff --git a/conf.d/project/lua.d/low-can-tests.lua b/conf.d/project/lua.d/low-can-tests.lua index e1c7112..e724c38 100644 --- a/conf.d/project/lua.d/low-can-tests.lua +++ b/conf.d/project/lua.d/low-can-tests.lua @@ -1,34 +1,59 @@ --[[ - Copyright (C) 2016 "IoT.bzh" - Author Fulup Ar Foll <fulup@iot.bzh> + Copyright (C) 2016 "IoT.bzh" + Author Fulup Ar Foll <fulup@iot.bzh> - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. - NOTE: strict mode: every global variables should be prefixed by '_' + NOTE: strict mode: every global variables should be prefixed by '_' --]] +EXPORT_ASSERT_TO_GLOBALS = true +require('luaunit') +--module( "low-can-testcase", lunit.testcase, package.seeall ) -- Static variables should be prefixed with _ -_EventHandle={} +_EventHandle = {} + +_engine_on_msg_received = false + +local clock = os.clock +function sleep(n) -- seconds + local t0 = clock() + while clock() - t0 <= n do end +end + +function _evt_catcher_ (source, action, event) + local match = string.find(event.data.message, "is_engine_on: engine.speed CAN signal found, but engine seems off") + if match ~= nil then + _engine_on_msg_received = true + end +end -- Display receive arguments and echo them to caller -function _launch_tests_ (source, args) +function _launch_tests (source, args) + local responseJ = {} + + AFB:servsync(source, "monitor","set", { verbosity = "debug" }) + AFB:servsync(source, "monitor","trace", { add = { api = "low-can", daemon = "vverbose" }}) + + local err,responseJ = AFB:servsync(source, "low-can","subscribe", { event = "diagnostic_messages.engine.speed" }) + + assertStrMatches(responseJ.request.status, "success", nil, nil, "Correctly subscribed to engine.speed signal") - -- get list of supported HAL devices - AFB:service(source, "low-can","subscribe", { event = "diagnostic_messages.engine.speed" }, "_Process_result_", {}) + AFB:servsync(source, "monitor","trace", { drop = true}) - AFB:notice (source, "--InLua-- Engine Speed presence test. done") + assertTrue(_engine_on_msg_received, "Ok, got the message indicating that engine is Off") return 0 -- happy end end |