aboutsummaryrefslogtreecommitdiffstats
path: root/conf.d/project/lua.d/low-can-tests.lua
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2018-07-10 16:26:39 +0200
committerRomain Forlot <romain.forlot@iot.bzh>2018-07-10 17:12:13 +0200
commit8a35cc2a73a8d02feb30262a76e79fee49961df4 (patch)
tree659df5efcf7ce5269baa5976554c817705ec9355 /conf.d/project/lua.d/low-can-tests.lua
parent14c5b20de6357f57d1facf1c9742f78958df29a3 (diff)
Update controller mechanism
Add luaunit as xUnit lua framework Change-Id: I49627b6554c62d05eca5e367d073b037385e40b1 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'conf.d/project/lua.d/low-can-tests.lua')
-rw-r--r--conf.d/project/lua.d/low-can-tests.lua59
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