From 311a3638d478523b8e57f4181615295f51555769 Mon Sep 17 00:00:00 2001 From: Frederic Marec Date: Fri, 29 Mar 2019 17:32:46 +0100 Subject: Add test for platform-info binding Change-Id: I5471075bd4bc1d6ac098224ef5f7d183ac9606e8 Signed-off-by: Frederic Marec --- test/CMakeLists.txt | 40 ++++++++++++++++++------------- test/afb-test/CMakeLists.txt | 22 +++++++++++++++++ test/afb-test/etc/CMakeLists.txt | 31 ++++++++++++++++++++++++ test/afb-test/etc/aft-agl-info.json | 23 ++++++++++++++++++ test/afb-test/tests/CMakeLists.txt | 31 ++++++++++++++++++++++++ test/afb-test/tests/aft-BasicAPITests.lua | 36 ++++++++++++++++++++++++++++ test/aft-BasicAPITests.lua | 4 ---- test/aft-info.json | 23 ------------------ 8 files changed, 167 insertions(+), 43 deletions(-) create mode 100644 test/afb-test/CMakeLists.txt create mode 100644 test/afb-test/etc/CMakeLists.txt create mode 100644 test/afb-test/etc/aft-agl-info.json create mode 100644 test/afb-test/tests/CMakeLists.txt create mode 100644 test/afb-test/tests/aft-BasicAPITests.lua delete mode 100644 test/aft-BasicAPITests.lua delete mode 100644 test/aft-info.json diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 685ce9c..92f56d6 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,19 +1,27 @@ -PROJECT_TARGET_ADD(test-files) +########################################################################### +# Copyright 2015 - 2019 IoT.bzh +# +# author:Frédéric Marec +# +# 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 +# +# 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. +########################################################################### - file(GLOB LUA_FILES "*.lua") - add_input_files("${LUA_FILES}") - SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES - LABELS "TEST-DATA" - OUTPUT_NAME ${TARGET_NAME} - ) +# Include any directory not starting with _ +# ----------------------------------------------------- +PROJECT_SUBDIRS_ADD(${PROJECT_SRC_DIR_PATTERN}) -PROJECT_TARGET_ADD(test-configuration) - - file(GLOB CFG_FILES "*.json") - add_input_files("${CFG_FILES}") - - SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES - LABELS "TEST-CONFIG" - OUTPUT_NAME ${TARGET_NAME} - ) +ADD_TEST(NAME PLATFORM-INFO_TESTS + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND afm-test ${CMAKE_BINARY_DIR}/package ${CMAKE_BINARY_DIR}/package-test +) \ No newline at end of file diff --git a/test/afb-test/CMakeLists.txt b/test/afb-test/CMakeLists.txt new file mode 100644 index 0000000..dbfd1cf --- /dev/null +++ b/test/afb-test/CMakeLists.txt @@ -0,0 +1,22 @@ +########################################################################### +# Copyright 2019 IoT.bzh +# +# author:Frédéric Marec +# +# 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 +# +# 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. +########################################################################### + + +# Include any directory not starting with _ +# ----------------------------------------------------- +PROJECT_SUBDIRS_ADD(${PROJECT_SRC_DIR_PATTERN}) \ No newline at end of file diff --git a/test/afb-test/etc/CMakeLists.txt b/test/afb-test/etc/CMakeLists.txt new file mode 100644 index 0000000..1fb9275 --- /dev/null +++ b/test/afb-test/etc/CMakeLists.txt @@ -0,0 +1,31 @@ +########################################################################### +# Copyright 2019 IoT.bzh +# +# author:Frédéric Marec +# +# 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 +# +# 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. +########################################################################### + +################################################## +# Platform-info test configuration files +################################################## +PROJECT_TARGET_ADD(afb-test-config) + + file(GLOB CONF_FILES "*.json") + + add_input_files("${CONF_FILES}") + + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "TEST-CONFIG" + OUTPUT_NAME ${TARGET_NAME} + ) \ No newline at end of file diff --git a/test/afb-test/etc/aft-agl-info.json b/test/afb-test/etc/aft-agl-info.json new file mode 100644 index 0000000..24ca2d0 --- /dev/null +++ b/test/afb-test/etc/aft-agl-info.json @@ -0,0 +1,23 @@ +{ + "id": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "$schema": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "metadata": { + "uid": "OS Info binding Test", + "version": "1.0", + "api": "aft-platform-info", + "info": "AFB-test binding configuration file to test platform-info api.", + "require": [ + "platform-info" + ] + }, + "testVerb": { + "uid": "short", + "info": "Launch the basic API tests", + "action": "lua://AFT#_launch_test", + "args": { + "trace": "platform-info", + "files": "aft-BasicAPITests.lua" + } + } +} + diff --git a/test/afb-test/tests/CMakeLists.txt b/test/afb-test/tests/CMakeLists.txt new file mode 100644 index 0000000..f244f88 --- /dev/null +++ b/test/afb-test/tests/CMakeLists.txt @@ -0,0 +1,31 @@ +########################################################################### +# Copyright 2019 IoT.bzh +# +# author:Frédéric Marec +# +# 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 +# +# 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. +########################################################################### + + +################################################## +# Platform-info Lua Scripts +################################################## +PROJECT_TARGET_ADD(test-files) + + file(GLOB LUA_FILES "*.lua") + add_input_files("${LUA_FILES}") + + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "TEST-DATA" + OUTPUT_NAME ${TARGET_NAME} + ) \ No newline at end of file diff --git a/test/afb-test/tests/aft-BasicAPITests.lua b/test/afb-test/tests/aft-BasicAPITests.lua new file mode 100644 index 0000000..730db7e --- /dev/null +++ b/test/afb-test/tests/aft-BasicAPITests.lua @@ -0,0 +1,36 @@ +--[[ + Copyright (C) 2019 "IoT.bzh" + Author Frédéric Marec + + 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 + + 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 '_' +--]] + +local testPrefix ="agl-info_BasicAPITest_" + +-- This tests the 'get' verb of the platform-info API +_AFT.testVerbStatusSuccess(testPrefix.."get", "platform-info", "get", ".build.layers.agl-manifest.revision") + +-- This tests the 'get' verb of the platform-info API +_AFT.testVerbStatusError(testPrefix.."get", "platform-info", "get", {}) + +-- This tests the 'set' verb of the platform-info API +_AFT.testVerbStatusSuccess(testPrefix.."set", "platform-info", "set", {arg=".build.layers.agl-manifest.revision", value="test"}) + +-- This tests the 'subscribe' verb of the platform-info API +_AFT.testVerbStatusSuccess(testPrefix.."subscribe", "platform-info", "subscribe", {}) + +-- This tests the 'unsubscribe' verb of the platform-info API +_AFT.testVerbStatusSuccess(testPrefix.."unsubscribe", "platform-info", "unsubscribe", {}) \ No newline at end of file diff --git a/test/aft-BasicAPITests.lua b/test/aft-BasicAPITests.lua deleted file mode 100644 index 2806363..0000000 --- a/test/aft-BasicAPITests.lua +++ /dev/null @@ -1,4 +0,0 @@ -_AFT.testVerbStatusSuccess("Ping_verb_test", "helloworld", "ping", {}) -_AFT.testVerbStatusSuccess("TestArgs_verb_test", "helloworld", "testargs", { cezam = "open" }) -_AFT.testVerbStatusError("TestArgs_value_error_verb_test", "helloworld", "testargs", { cezam = "close" }) -_AFT.testVerbStatusError("TestArgs_key_error_verb_test", "helloworld", "testargs", { abracadabdra = "open" }) diff --git a/test/aft-info.json b/test/aft-info.json deleted file mode 100644 index 17251be..0000000 --- a/test/aft-info.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "id": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", - "$schema": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", - "metadata": { - "uid": "OS Info binding Test", - "version": "1.0", - "api": "aft-os-info", - "info": "AFB-test binding configuration file to test os-info api.", - "require": [ - "os-info" - ] - }, - "testVerb": { - "uid": "short", - "info": "Launch the basic API tests", - "action": "lua://AFT#_launch_test", - "args": { - "trace": "os-info", - "files": "aft-BasicAPITests.lua" - } - } -} - -- cgit 1.2.3-korg