From 6d4e38d402dcd352105ec73a2d312b299b41b2d0 Mon Sep 17 00:00:00 2001 From: ChenHengming Date: Fri, 7 Aug 2015 07:14:34 +0000 Subject: [PATCH] [mpp_info_test]: add mpp_info unit test git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@57 6e48237b-75ef-9749-8fc9-41990f28c85a --- mpp/CMakeLists.txt | 1 + mpp/mpp_info.cpp | 12 +++++------- mpp/mpp_info.h | 1 + mpp/test/CMakeLists.txt | 24 ++++++++++++++++++++++++ mpp/test/mpp_info_test.c | 28 ++++++++++++++++++++++++++++ 5 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 mpp/test/CMakeLists.txt create mode 100644 mpp/test/mpp_info_test.c diff --git a/mpp/CMakeLists.txt b/mpp/CMakeLists.txt index b442a01a..df681a62 100644 --- a/mpp/CMakeLists.txt +++ b/mpp/CMakeLists.txt @@ -7,3 +7,4 @@ add_library(mpp STATIC target_link_libraries(mpp osal) +add_subdirectory(test) diff --git a/mpp/mpp_info.cpp b/mpp/mpp_info.cpp index 9d940493..a37d4fcb 100644 --- a/mpp/mpp_info.cpp +++ b/mpp/mpp_info.cpp @@ -27,7 +27,7 @@ mpp_info *mpp_info::singleton = NULL; -/* +/* * To avoid string | grep author getting multiple results * use commit to replace author */ @@ -95,15 +95,13 @@ void mpp_info::show_mpp_info() rk_log("%s\n", mpp_version_one_line); } -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ RK_CHIP_TYPE get_chip_type() { return chip_version(); } -#ifdef __cplusplus + +int get_mpp_revision() +{ + return atoi(SVN_VERSION); } -#endif - diff --git a/mpp/mpp_info.h b/mpp/mpp_info.h index 8ac94bf9..41d0a674 100644 --- a/mpp/mpp_info.h +++ b/mpp/mpp_info.h @@ -51,6 +51,7 @@ extern "C" { #endif /* __cplusplus */ RK_CHIP_TYPE get_chip_type(); +int get_mpp_revision(); #ifdef __cplusplus } diff --git a/mpp/test/CMakeLists.txt b/mpp/test/CMakeLists.txt new file mode 100644 index 00000000..f0e8e4b0 --- /dev/null +++ b/mpp/test/CMakeLists.txt @@ -0,0 +1,24 @@ +# vim: syntax=cmake +# ---------------------------------------------------------------------------- +# mpp built-in unit test case +# ---------------------------------------------------------------------------- +# macro for adding mpp sub-module unit test +macro(add_mpp_test module) + set(test_name ${module}_test) + string(TOUPPER ${test_name} test_tag) + #message(STATUS "moduule : ${module}") + #message(STATUS "test_name : ${test_name}") + #message(STATUS "test_tag : ${test_tag}") + + option(${test_tag} "Build mpp ${module} unit test" ON) + if(${test_tag}) + add_executable(${test_name} ${test_name}.c) + target_link_libraries(${test_name} mpp) + install(TARGETS ${test_name} RUNTIME DESTINATION ${TEST_INSTALL_DIR}) + endif() +endmacro() + +# info system unit test +add_mpp_test(mpp_info) + + diff --git a/mpp/test/mpp_info_test.c b/mpp/test/mpp_info_test.c new file mode 100644 index 00000000..055b8be9 --- /dev/null +++ b/mpp/test/mpp_info_test.c @@ -0,0 +1,28 @@ +/* + * Copyright 2010 Rockchip Electronics S.LSI Co. LTD + * + * 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. + */ + +#define MODULE_TAG "mpp_info_test" + +#include "rk_log.h" +#include "mpp_info.h" + +int main() +{ + rk_log("mpp revision is %d\n", get_mpp_revision()); + + return 0; +} +