summaryrefslogtreecommitdiff
path: root/gtest
diff options
context:
space:
mode:
author“pengxuanzheng” <[email protected]>2022-06-01 10:23:29 +0000
committer“pengxuanzheng” <[email protected]>2022-06-01 10:59:33 +0000
commitd229dcfa923d4ff7013c825fc4d2f2c4dbdb850a (patch)
treec7acba75bdce477a271f5e7f68e2a0c5e9877580 /gtest
parent60d7653f8a813f91c40a342d2ca4260002638986 (diff)
✨ feat: 根据cppcheck 修改example, 增加lua 测试用例
Diffstat (limited to 'gtest')
-rw-r--r--gtest/CMakeLists.txt6
-rw-r--r--gtest/gtest_tsg_lua_cache_exec.cpp20
-rw-r--r--gtest/gtest_tsg_lua_cache_script.cpp12
-rw-r--r--gtest/gtest_tsg_lua_cache_script_bytecode_file.cpp4
-rw-r--r--gtest/gtest_tsg_lua_cache_script_file.cpp12
-rw-r--r--gtest/gtest_tsg_lua_exec.cpp19
-rw-r--r--gtest/gtest_tsg_lua_exec_bytecode.cpp19
-rw-r--r--gtest/gtest_tsg_lua_exec_bytecode_file.cpp19
-rw-r--r--gtest/gtest_tsg_lua_exec_file.cpp19
-rw-r--r--gtest/script/return_string_normal_sharp.lua4
-rw-r--r--gtest/script/return_string_normal_sharp.luajitbin0 -> 66 bytes
11 files changed, 129 insertions, 5 deletions
diff --git a/gtest/CMakeLists.txt b/gtest/CMakeLists.txt
index b1b37bb..69b9d3f 100644
--- a/gtest/CMakeLists.txt
+++ b/gtest/CMakeLists.txt
@@ -2,18 +2,18 @@ cmake_minimum_required(VERSION 2.6)
project(gtest_tsg_lua)
aux_source_directory(. SRCS)
-include_directories("/opt/MESA/include")
include_directories("../src")
link_directories("/opt/MESA/lib")
link_directories("${CMAKE_BINARY_DIR}/support/GoogleTest/include/")
link_directories("${CMAKE_BINARY_DIR}/src/")
link_directories("${CMAKE_BINARY_DIR}/support/GoogleTest/lib/")
-#link_libraries(tsglua gtest gtest_main pthread)
+link_libraries(tsglua gtest gtest_main pthread)
add_definitions(-g -W -Wall)
add_executable(gtest_tsg_lua ${SRCS})
+#add_executable(gtest_tsg_lua_cache_script ./gtest_tsg_lua_cache_script.cpp)
add_dependencies(gtest_tsg_lua ${lib_name}_shared gtest)
-target_link_libraries(gtest_tsg_lua tsglua gtest gtest_main pthread)
+#target_link_libraries(gtest_tsg_lua tsglua gtest gtest_main pthread)
add_test(NAME SOFT_LINK COMMAND sh -c "ln -sf ${CMAKE_CURRENT_SOURCE_DIR}/script" "${CMAKE_CURRENT_BINARY_DIR}/script")
add_test(NAME LUA_TEST COMMAND gtest_tsg_lua)
diff --git a/gtest/gtest_tsg_lua_cache_exec.cpp b/gtest/gtest_tsg_lua_cache_exec.cpp
index dc3a07b..7fc2e1e 100644
--- a/gtest/gtest_tsg_lua_cache_exec.cpp
+++ b/gtest/gtest_tsg_lua_cache_exec.cpp
@@ -306,3 +306,23 @@ TEST(tsg_lua_cache_exec, string_expected_but_table)
EXPECT_EQ(0, out_type);
EXPECT_STREQ("", out);
}
+
+TEST(tsg_lua_cache_exec, normal_return_string_sharp)
+{
+ tsg_lua_handle L = NULL;
+ char out[255];
+ size_t out_len = 0;
+ size_t out_type = 0;
+
+ L = tsg_lua_vm_create();
+ const char *script = "./script/return_string_normal_sharp.lua";
+ memset(out, 0, 255);
+ int script_id = tsg_lua_cache_script_file(L, script);
+ int ret = tsg_lua_cache_exec(L, script_id, data, strlen(data), out, &out_len, &out_type);
+
+ /* check */
+ EXPECT_EQ(0, ret);
+ EXPECT_EQ(11, out_len);
+ EXPECT_EQ(STRING, out_type);
+ EXPECT_STREQ("hello world", out);
+} \ No newline at end of file
diff --git a/gtest/gtest_tsg_lua_cache_script.cpp b/gtest/gtest_tsg_lua_cache_script.cpp
index 1623a31..ae3590e 100644
--- a/gtest/gtest_tsg_lua_cache_script.cpp
+++ b/gtest/gtest_tsg_lua_cache_script.cpp
@@ -167,3 +167,15 @@ TEST(tsg_lua_cache_script, right_curly_bracket_expected)
/* check */
EXPECT_EQ(ERR_SCRIPT_RIGHT_CURLY_BRACKET_EXPECTED, ret);
}
+
+TEST(tsg_lua_cache_script, return_string_normal_sharp)
+{
+ tsg_lua_handle L = NULL;
+
+ L = tsg_lua_vm_create();
+ const char *script = get_script_buffer("./script/return_string_normal_sharp.lua");
+ int script_id = tsg_lua_cache_script(L, script, script_len);
+
+ /* check */
+ EXPECT_EQ(1, script_id);
+} \ No newline at end of file
diff --git a/gtest/gtest_tsg_lua_cache_script_bytecode_file.cpp b/gtest/gtest_tsg_lua_cache_script_bytecode_file.cpp
index 9079e61..0abf7a3 100644
--- a/gtest/gtest_tsg_lua_cache_script_bytecode_file.cpp
+++ b/gtest/gtest_tsg_lua_cache_script_bytecode_file.cpp
@@ -12,7 +12,7 @@ TEST(tsg_lua_cache_script_bytecode_file, normal)
tsg_lua_handle L = NULL;
L = tsg_lua_vm_create();
- const char *script = "./script/return_string_normal.lua";
+ const char *script = "./script/return_string_normal.luajit";
int script_id = tsg_lua_cache_script_file(L, script);
/* check */
@@ -23,7 +23,7 @@ TEST(tsg_lua_cache_script_bytecode_file, lua_vm_isnull)
{
tsg_lua_handle L = NULL;
- const char *script = "./script/return_string_normal.lua";
+ const char *script = "./script/return_string_normal.luajit";
int script_id = tsg_lua_cache_script_file(L, script);
/* check */
diff --git a/gtest/gtest_tsg_lua_cache_script_file.cpp b/gtest/gtest_tsg_lua_cache_script_file.cpp
index 0529f45..4b57b98 100644
--- a/gtest/gtest_tsg_lua_cache_script_file.cpp
+++ b/gtest/gtest_tsg_lua_cache_script_file.cpp
@@ -161,3 +161,15 @@ TEST(tsg_lua_cache_script_file, right_curly_bracket_expected)
/* check */
EXPECT_EQ(ERR_SCRIPT_RIGHT_CURLY_BRACKET_EXPECTED, ret);
}
+
+TEST(tsg_lua_cache_script_file, sharp)
+{
+ tsg_lua_handle L = NULL;
+
+ L = tsg_lua_vm_create();
+ const char *script = "./script/return_string_normal_sharp.lua";
+ int script_id = tsg_lua_cache_script_file(L, script);
+
+ /* check */
+ EXPECT_EQ(1, script_id);
+} \ No newline at end of file
diff --git a/gtest/gtest_tsg_lua_exec.cpp b/gtest/gtest_tsg_lua_exec.cpp
index 8f52ce8..1be5bcc 100644
--- a/gtest/gtest_tsg_lua_exec.cpp
+++ b/gtest/gtest_tsg_lua_exec.cpp
@@ -499,3 +499,22 @@ TEST(tsg_lua_exec, function_invaild)
EXPECT_STREQ("", out);
}
#endif
+
+TEST(tsg_lua_exec, sharp)
+{
+ tsg_lua_handle L = NULL;
+ char out[255];
+ size_t out_len = 0;
+ size_t out_type = 0;
+
+ L = tsg_lua_vm_create();
+ memset(out, 0, 255);
+ const char *script = get_script_buffer("./script/return_string_normal_sharp.lua");
+ int ret = tsg_lua_exec(L, script, strlen(script), data, strlen(data), out, &out_len, &out_type);
+
+ /* check */
+ EXPECT_EQ(0, ret);
+ EXPECT_EQ(11, out_len);
+ EXPECT_EQ(STRING, out_type);
+ EXPECT_STREQ("hello world", out);
+}
diff --git a/gtest/gtest_tsg_lua_exec_bytecode.cpp b/gtest/gtest_tsg_lua_exec_bytecode.cpp
index 3fa8ac0..0d12b96 100644
--- a/gtest/gtest_tsg_lua_exec_bytecode.cpp
+++ b/gtest/gtest_tsg_lua_exec_bytecode.cpp
@@ -310,3 +310,22 @@ TEST(tsg_lua_exec_bytecode, return_length_iszero)
EXPECT_EQ(0, out_type);
EXPECT_STREQ("", out);
}
+
+TEST(tsg_lua_exec_bytecode, normal_return_string_sharp)
+{
+ tsg_lua_handle L = NULL;
+ char out[255];
+ size_t out_len = 0;
+ size_t out_type = 0;
+
+ L = tsg_lua_vm_create();
+ memset(out, 0, 255);
+ const char *script = get_script_buffer("./script/return_string_normal_sharp.luajit");
+ int ret = tsg_lua_exec(L, script, script_len, data, strlen(data), out, &out_len, &out_type);
+
+ /* check */
+ EXPECT_EQ(0, ret);
+ EXPECT_EQ(11, out_len);
+ EXPECT_EQ(STRING, out_type);
+ EXPECT_STREQ("hello world", out);
+} \ No newline at end of file
diff --git a/gtest/gtest_tsg_lua_exec_bytecode_file.cpp b/gtest/gtest_tsg_lua_exec_bytecode_file.cpp
index 72d2065..18ae428 100644
--- a/gtest/gtest_tsg_lua_exec_bytecode_file.cpp
+++ b/gtest/gtest_tsg_lua_exec_bytecode_file.cpp
@@ -290,3 +290,22 @@ TEST(tsg_lua_exec_bytecode_file, return_length_iszero)
EXPECT_EQ(0, out_type);
EXPECT_STREQ("", out);
}
+
+TEST(tsg_lua_exec_bytecode_file, normal_return_string_sharp)
+{
+ tsg_lua_handle L = NULL;
+ char out[255];
+ size_t out_len = 0;
+ size_t out_type = 0;
+
+ L = tsg_lua_vm_create();
+ const char *script = "./script/return_string_normal_sharp.luajit";
+ memset(out, 0, 255);
+ int ret = tsg_lua_exec_file(L, script, data, strlen(data), out, &out_len, &out_type);
+
+ /* check */
+ EXPECT_EQ(0, ret);
+ EXPECT_EQ(11, out_len);
+ EXPECT_EQ(STRING, out_type);
+ EXPECT_STREQ("hello world", out);
+}
diff --git a/gtest/gtest_tsg_lua_exec_file.cpp b/gtest/gtest_tsg_lua_exec_file.cpp
index 4b36443..81fbe5c 100644
--- a/gtest/gtest_tsg_lua_exec_file.cpp
+++ b/gtest/gtest_tsg_lua_exec_file.cpp
@@ -482,3 +482,22 @@ TEST(tsg_lua_exec_file, function_invaild)
EXPECT_STREQ("", out);
}
#endif
+
+TEST(tsg_lua_exec_file, normal_return_string_sharp)
+{
+ tsg_lua_handle L = NULL;
+ char out[255];
+ size_t out_len = 0;
+ size_t out_type = 0;
+
+ L = tsg_lua_vm_create();
+ const char *script = "./script/return_string_normal_sharp.lua";
+ memset(out, 0, 255);
+ int ret = tsg_lua_exec_file(L, script, data, strlen(data), out, &out_len, &out_type);
+
+ /* check */
+ EXPECT_EQ(0, ret);
+ EXPECT_EQ(11, out_len);
+ EXPECT_EQ(STRING, out_type);
+ EXPECT_STREQ("hello world", out);
+} \ No newline at end of file
diff --git a/gtest/script/return_string_normal_sharp.lua b/gtest/script/return_string_normal_sharp.lua
new file mode 100644
index 0000000..fd5c3e8
--- /dev/null
+++ b/gtest/script/return_string_normal_sharp.lua
@@ -0,0 +1,4 @@
+#!/usr/local/bin/luajit
+
+local str = TSG.data
+return string.len(str), str
diff --git a/gtest/script/return_string_normal_sharp.luajit b/gtest/script/return_string_normal_sharp.luajit
new file mode 100644
index 0000000..e32af68
--- /dev/null
+++ b/gtest/script/return_string_normal_sharp.luajit
Binary files differ