From bab203035f3e2545ef5e947696dc25bcfd1a40b7 Mon Sep 17 00:00:00 2001 From: Frederic Marec Date: Fri, 30 Nov 2018 10:30:22 +0100 Subject: Add tests for 4a-softmixer Add test tree Add new config for test Add tests for softmixer Add script to load snd-aloop before test Bug-AGL: SPEC-1796 Change-Id: I6336dbb5689e7baf8f2e8754b23f6aa83b0797d7 Signed-off-by: Frederic Marec --- test/CMakeLists.txt | 27 +++++++++++++++++++ test/afb-test/CMakeLists.txt | 22 +++++++++++++++ test/afb-test/etc/CMakeLists.txt | 31 +++++++++++++++++++++ test/afb-test/etc/aft-smixer-config.json | 22 +++++++++++++++ test/afb-test/fixtures/CMakeLists.txt | 30 +++++++++++++++++++++ test/afb-test/fixtures/beforeAll.sh | 25 +++++++++++++++++ test/afb-test/tests/4a-softmixer_BasicAPITest.lua | 33 +++++++++++++++++++++++ test/afb-test/tests/CMakeLists.txt | 31 +++++++++++++++++++++ 8 files changed, 221 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-smixer-config.json create mode 100644 test/afb-test/fixtures/CMakeLists.txt create mode 100644 test/afb-test/fixtures/beforeAll.sh create mode 100644 test/afb-test/tests/4a-softmixer_BasicAPITest.lua create mode 100644 test/afb-test/tests/CMakeLists.txt (limited to 'test') diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000..cc48395 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,27 @@ +########################################################################### +# Copyright 2015 - 2018 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}) + +ADD_TEST(NAME AGL_4A_SOFTMIXER_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..9df744e --- /dev/null +++ b/test/afb-test/CMakeLists.txt @@ -0,0 +1,22 @@ +########################################################################### +# Copyright 2018 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..86920cd --- /dev/null +++ b/test/afb-test/etc/CMakeLists.txt @@ -0,0 +1,31 @@ +########################################################################### +# Copyright 2018 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. +########################################################################### + +################################################## +# 4a Softmixer test configuration files +################################################## +PROJECT_TARGET_ADD(softmixer-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-smixer-config.json b/test/afb-test/etc/aft-smixer-config.json new file mode 100644 index 0000000..2a9ba1c --- /dev/null +++ b/test/afb-test/etc/aft-smixer-config.json @@ -0,0 +1,22 @@ +{ + "id": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "$schema": "http://iot.bzh/download/public/schema/json/ctl-schema.json#", + "metadata": { + "uid": "Test", + "version": "1.0", + "api": "aft-4a-smixer", + "info": "AFB-test binding configuration file to test ahl api.", + "require": [ + "smixer" + ] + }, + "testVerb": { + "uid": "launch_all_tests", + "info": "Launch all the tests", + "action": "lua://AFT#_launch_test", + "args": { + "trace": "smixer", + "files": ["4a-softmixer_BasicAPITest.lua"] + } + } +} \ No newline at end of file diff --git a/test/afb-test/fixtures/CMakeLists.txt b/test/afb-test/fixtures/CMakeLists.txt new file mode 100644 index 0000000..40e39f9 --- /dev/null +++ b/test/afb-test/fixtures/CMakeLists.txt @@ -0,0 +1,30 @@ +########################################################################### +# Copyright 2018 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. +########################################################################### + +################################################## +# 4a Softmixer test configuration files +################################################## +PROJECT_TARGET_ADD(data-files) + + file(GLOB DATA_FILES "*.sh") + add_input_files("${DATA_FILES}") + + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "TEST-DATA" + OUTPUT_NAME ${TARGET_NAME} + ) diff --git a/test/afb-test/fixtures/beforeAll.sh b/test/afb-test/fixtures/beforeAll.sh new file mode 100644 index 0000000..4fcfc6d --- /dev/null +++ b/test/afb-test/fixtures/beforeAll.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +########################################################################### +# Copyright 2018 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. +########################################################################### + +#set SUDO variable +SUDO=$(command -v sudo) + +#Install Alsa Loopback Driver +"$SUDO" modprobe snd-aloop diff --git a/test/afb-test/tests/4a-softmixer_BasicAPITest.lua b/test/afb-test/tests/4a-softmixer_BasicAPITest.lua new file mode 100644 index 0000000..f16b239 --- /dev/null +++ b/test/afb-test/tests/4a-softmixer_BasicAPITest.lua @@ -0,0 +1,33 @@ +--[[ + Copyright (C) 2018 "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 '_' +--]] + +_AFT.setBeforeAll(function() + if not os.execute("/bin/bash ".._AFT.bindingRootDir.."/var/beforeAll.sh") then + print("Fail to setup test") + return -1 + else + return 0 + end +end) + +local testPrefix ="4a-smixer_BasicAPITest_" + +-- This tests the ping verb of the audio High level API +_AFT.testVerbStatusSuccess(testPrefix.."ping","smixer","ping",{}, nil, nil) diff --git a/test/afb-test/tests/CMakeLists.txt b/test/afb-test/tests/CMakeLists.txt new file mode 100644 index 0000000..5bbe0d5 --- /dev/null +++ b/test/afb-test/tests/CMakeLists.txt @@ -0,0 +1,31 @@ +########################################################################### +# Copyright 2018 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. +########################################################################### + + +################################################## +# 4a Softmixer 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 -- cgit 1.2.3-korg