From ed3f9f0a4012126bb8a743eebd9ed9646f14bf54 Mon Sep 17 00:00:00 2001 From: winlin Date: Sun, 29 Jun 2014 16:04:28 +0800 Subject: [PATCH] add core utest --- trunk/configure | 3 +- trunk/src/srs/srs.upp | 2 + trunk/src/utest/srs_utest_core.cpp | 68 ++++++++++++++++++++++++++++++ trunk/src/utest/srs_utest_core.hpp | 34 +++++++++++++++ 4 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 trunk/src/utest/srs_utest_core.cpp create mode 100644 trunk/src/utest/srs_utest_core.hpp diff --git a/trunk/configure b/trunk/configure index 8f83049de..4203ac4d6 100755 --- a/trunk/configure +++ b/trunk/configure @@ -517,7 +517,8 @@ fi # # utest, the unit-test cases of srs, base on gtest1.6 MODULE_FILES=("srs_utest" "srs_utest_amf0" "srs_utest_handshake" - "srs_utest_buffer" "srs_utest_protocol" "srs_utest_kernel") + "srs_utest_buffer" "srs_utest_protocol" "srs_utest_kernel" + "srs_utest_core") ModuleLibIncs=(${SRS_OBJS} ${LibSTRoot}) ModuleLibFiles=(${LibSTfile} ${LibHttpParserfile} ${LibSSLfile}) MODULE_DEPENDS=("CORE" "KERNEL" "RTMP" "APP") diff --git a/trunk/src/srs/srs.upp b/trunk/src/srs/srs.upp index b8f98d0c1..5a09fa8d7 100755 --- a/trunk/src/srs/srs.upp +++ b/trunk/src/srs/srs.upp @@ -114,6 +114,8 @@ file ..\utest\srs_utest_amf0.cpp, ..\utest\srs_utest_buffer.hpp, ..\utest\srs_utest_buffer.cpp, + ..\utest\srs_utest_core.hpp, + ..\utest\srs_utest_core.cpp, ..\utest\srs_utest_handshake.hpp, ..\utest\srs_utest_handshake.cpp, ..\utest\srs_utest_kernel.hpp, diff --git a/trunk/src/utest/srs_utest_core.cpp b/trunk/src/utest/srs_utest_core.cpp new file mode 100644 index 000000000..d02f4b143 --- /dev/null +++ b/trunk/src/utest/srs_utest_core.cpp @@ -0,0 +1,68 @@ +/* +The MIT License (MIT) + +Copyright (c) 2013-2014 winlin + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ +#include + +using namespace std; + +#include + +VOID TEST(CoreAutoFreeTest, Free) +{ + char* data = new char[32]; + srs_freep(data); + EXPECT_TRUE(data == NULL); + + if (true) { + data = new char[32]; + SrsAutoFree(char, data); + } + EXPECT_TRUE(data == NULL); +} + +VOID TEST(CoreMacroseTest, Check) +{ +#ifndef SRS_AUTO_BUILD_TS + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_BUILD_DATE + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_UNAME + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_USER_CONFIGURE + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_CONFIGURE + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_EMBEDED_TOOL_CHAIN + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_PREFIX + EXPECT_TRUE(false); +#endif +#ifndef SRS_AUTO_CONSTRIBUTORS + EXPECT_TRUE(false); +#endif +} diff --git a/trunk/src/utest/srs_utest_core.hpp b/trunk/src/utest/srs_utest_core.hpp new file mode 100644 index 000000000..576fc80b6 --- /dev/null +++ b/trunk/src/utest/srs_utest_core.hpp @@ -0,0 +1,34 @@ +/* +The MIT License (MIT) + +Copyright (c) 2013-2014 winlin + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ + +#ifndef SRS_UTEST_CORE_HPP +#define SRS_UTEST_CORE_HPP + +/* +#include +*/ +#include + +#include + +#endif