From 9849a794b362983e8286d38266db66b044218b8b Mon Sep 17 00:00:00 2001 From: "Li, Xiaoming" Date: Mon, 6 Jul 2020 15:21:55 +0800 Subject: Add test bindings for agl-service-audiomixer - Create the file and folders structure required. for building test bindings. Add all required Cmake files. - Create aft-agl-audiomixer.json configuration file for testing binding. - Create audiomixer.lua for testing bindings. Bug-AGL: SPEC-3458 Change-Id: I16d43abb29d4a124801c704b4080ba5cba16e1c8 Signed-off-by: Li, Xiaoming --- test/CMakeLists.txt | 28 ++++++++++++++++++++++ test/afb-test/CMakeLists.txt | 21 ++++++++++++++++ test/afb-test/etc/CMakeLists.txt | 32 +++++++++++++++++++++++++ test/afb-test/etc/aft-agl-audiomixer.json | 22 +++++++++++++++++ test/afb-test/tests/CMakeLists.txt | 31 ++++++++++++++++++++++++ test/afb-test/tests/audiomixer.lua | 40 +++++++++++++++++++++++++++++++ 6 files changed, 174 insertions(+) create mode 100644 test/CMakeLists.txt 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-audiomixer.json create mode 100644 test/afb-test/tests/CMakeLists.txt create mode 100644 test/afb-test/tests/audiomixer.lua diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000..8d8fbdc --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,28 @@ +########################################################################### +# Copyright 2020 Fujitsu +# +# author: Li Xiaoming +# +# 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}) + +ADD_TEST(NAME AGL_SERVICE_GPS_TESTS + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND afm-test ${CMAKE_BINARY_DIR}/package ${CMAKE_BINARY_DIR}/package-test + ) + diff --git a/test/afb-test/CMakeLists.txt b/test/afb-test/CMakeLists.txt new file mode 100644 index 0000000..4adafb0 --- /dev/null +++ b/test/afb-test/CMakeLists.txt @@ -0,0 +1,21 @@ +########################################################################### +# Copyright 2020 Fujitsu +# +# author: Li Xiaoming +# +# 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}) diff --git a/test/afb-test/etc/CMakeLists.txt b/test/afb-test/etc/CMakeLists.txt new file mode 100644 index 0000000..12e2efc --- /dev/null +++ b/test/afb-test/etc/CMakeLists.txt @@ -0,0 +1,32 @@ +########################################################################### +# Copyright 2020 Fujitsu +# +# author: Li Xiaoming +# +# 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. +########################################################################### + +################################################## +# audiomixer 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} + ) + diff --git a/test/afb-test/etc/aft-agl-audiomixer.json b/test/afb-test/etc/aft-agl-audiomixer.json new file mode 100644 index 0000000..c1e1c96 --- /dev/null +++ b/test/afb-test/etc/aft-agl-audiomixer.json @@ -0,0 +1,22 @@ +{ + "id": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "metadata": { + "uid": "Test", + "version": "1.0", + "api": "aft-audiomixer", + "info": "AFB-test binding configuration file to test audiomixer api.", + "require": [ + "audiomixer" + ] + }, + "testVerb": { + "uid": "launch_all_tests", + "info": "Launch all the tests", + "action": "lua://AFT#_launch_test", + "args": { + "trace": "audiomixer", + "files": ["audiomixer.lua"] + } + } +} diff --git a/test/afb-test/tests/CMakeLists.txt b/test/afb-test/tests/CMakeLists.txt new file mode 100644 index 0000000..4153151 --- /dev/null +++ b/test/afb-test/tests/CMakeLists.txt @@ -0,0 +1,31 @@ +########################################################################### +# Copyright 2020 Fujitsu +# +# author:Li Xiaoming +# +# 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. +########################################################################### + +################################################## +# audiomixer Lua Scripts +################################################## +PROJECT_TARGET_ADD(test-files) + + file(GLOB LUA_FILES "*.lua" "*.sh") + add_input_files("${LUA_FILES}") + + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "TEST-DATA" + OUTPUT_NAME ${TARGET_NAME} + ) + diff --git a/test/afb-test/tests/audiomixer.lua b/test/afb-test/tests/audiomixer.lua new file mode 100644 index 0000000..926e6e9 --- /dev/null +++ b/test/afb-test/tests/audiomixer.lua @@ -0,0 +1,40 @@ +--[[ + Copyright 2020 Fujitsu + + author: Li Xiaoming + + 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. +--]] + + + +_AFT.testVerbStatusSuccess('testListControlSuccess','audiomixer','list_controls', {}) + +_AFT.testVerbStatusSuccess('testMuteChange0Success','audiomixer','mute', {"control":"Master", "value": "0"}) +_AFT.testVerbStatusSuccess('testMuteChange1Success','audiomixer','mute', {"control":"Master", "value": "1"}) +_AFT.testVerbStatusSuccess('testMuteNotChangeSuccess','audiomixer','mute', {"control":"Master"}) + +_AFT.testVerbStatusSuccess('testVolumeChangeSuccess','audiomixer','volume', {"control":"Master", "value": "0.5"}) +_AFT.testVerbStatusSuccess('testVolumeNotChangeSuccess','audiomixer','volume', {"control":"Master"}) + +_AFT.testVerbStatusSuccess('testSubscribeControls_changedSuccess','audiomixer','subscribe', {"event":"controls_changed"}) +_AFT.testVerbStatusSuccess('testSubscribeVolume_changedSuccess','audiomixer','subscribe', {"event":"volume_changed"}) +_AFT.testVerbStatusSuccess('testSubscribeMute_changedSuccess','audiomixer','subscribe', {"event":"mute_changed"}) + +_AFT.testVerbStatusSuccess('testUnSubscribeControls_changedSuccess','audiomixer','unsubscribe', {"event":"controls_changed"}) +_AFT.testVerbStatusSuccess('testUnSubscribeVolume_changedSuccess','audiomixer','unsubscribe', {"event":"volume_changed"}) +_AFT.testVerbStatusSuccess('testUnSubscribeMute_changedSuccess','audiomixer','unsubscribe', {"event":"mute_changed"}) + + + + -- cgit 1.2.3-korg