commit
2d88acc636
@ -1,7 +1,7 @@
|
|||||||
From 74c5abe35a931aca850d5619faecbd62e75d9fb2 Mon Sep 17 00:00:00 2001
|
From 74c5abe35a931aca850d5619faecbd62e75d9fb2 Mon Sep 17 00:00:00 2001
|
||||||
From: haozi007 <liuhao27@huawei.com>
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
Date: Tue, 26 May 2020 20:04:13 +0800
|
Date: Tue, 26 May 2020 20:04:13 +0800
|
||||||
Subject: [PATCH] fix wrong license
|
Subject: [PATCH 01/10] fix wrong license
|
||||||
|
|
||||||
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
---
|
---
|
||||||
|
|||||||
55
0002-support-import-rootfs-to-be-image.patch
Normal file
55
0002-support-import-rootfs-to-be-image.patch
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
From 15b7cc66a03f26c35dfc551a960edc24e5c52440 Mon Sep 17 00:00:00 2001
|
||||||
|
From: WangFengTu <wangfengtu@huawei.com>
|
||||||
|
Date: Wed, 27 May 2020 11:25:56 +0800
|
||||||
|
Subject: [PATCH 02/10] support import rootfs to be image
|
||||||
|
|
||||||
|
Signed-off-by: WangFengTu <wangfengtu@huawei.com>
|
||||||
|
---
|
||||||
|
src/json/schema/image/import-request.json | 12 ++++++++++++
|
||||||
|
src/json/schema/image/import-response.json | 15 +++++++++++++++
|
||||||
|
2 files changed, 27 insertions(+)
|
||||||
|
create mode 100644 src/json/schema/image/import-request.json
|
||||||
|
create mode 100644 src/json/schema/image/import-response.json
|
||||||
|
|
||||||
|
diff --git a/src/json/schema/image/import-request.json b/src/json/schema/image/import-request.json
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..e2fe7bc
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/json/schema/image/import-request.json
|
||||||
|
@@ -0,0 +1,12 @@
|
||||||
|
+{
|
||||||
|
+ "$schema": "http://json-schema.org/draft-04/schema#",
|
||||||
|
+ "type": "object",
|
||||||
|
+ "properties": {
|
||||||
|
+ "file": {
|
||||||
|
+ "type": "string"
|
||||||
|
+ },
|
||||||
|
+ "tag": {
|
||||||
|
+ "type": "string"
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
diff --git a/src/json/schema/image/import-response.json b/src/json/schema/image/import-response.json
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..048f43d
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/json/schema/image/import-response.json
|
||||||
|
@@ -0,0 +1,15 @@
|
||||||
|
+{
|
||||||
|
+ "$schema": "http://json-schema.org/draft-04/schema#",
|
||||||
|
+ "type": "object",
|
||||||
|
+ "properties": {
|
||||||
|
+ "id": {
|
||||||
|
+ "type": "string"
|
||||||
|
+ },
|
||||||
|
+ "cc": {
|
||||||
|
+ "type": "uint32"
|
||||||
|
+ },
|
||||||
|
+ "errmsg": {
|
||||||
|
+ "type": "string"
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
30
0003-support-calico.patch
Normal file
30
0003-support-calico.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From 855d567b2bd92aada6c7d61a75aae2d5441a1efe Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Tue, 2 Jun 2020 10:15:58 +0800
|
||||||
|
Subject: [PATCH 03/10] support calico
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
src/json/schema/cni/net_conf.json | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/json/schema/cni/net_conf.json b/src/json/schema/cni/net_conf.json
|
||||||
|
index 3b40017..89427ae 100644
|
||||||
|
--- a/src/json/schema/cni/net_conf.json
|
||||||
|
+++ b/src/json/schema/cni/net_conf.json
|
||||||
|
@@ -100,6 +100,12 @@
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"mtu": {
|
||||||
|
+ "type": "int32"
|
||||||
|
+ },
|
||||||
|
+ "datastore_type": {
|
||||||
|
+ "type": "string"
|
||||||
|
+ },
|
||||||
|
+ "nodename": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"policy": {
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
373
0004-improve-check-driver-of-log.patch
Normal file
373
0004-improve-check-driver-of-log.patch
Normal file
@ -0,0 +1,373 @@
|
|||||||
|
From 72c179403743bd9bd82f0e4d80c558d883b973ac Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Tue, 9 Jun 2020 14:44:51 +0800
|
||||||
|
Subject: [PATCH 04/10] improve check driver of log
|
||||||
|
|
||||||
|
1. add llt for log
|
||||||
|
2. improve init driver of log
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
lcr.spec | 2 +-
|
||||||
|
tests/json_llt.cpp | 17 ++++++++--
|
||||||
|
tests/log_llt.cpp | 53 +++++++++++++++++++++++++++++--
|
||||||
|
third_party/log.c | 78 +++++++++++++++++++++++++---------------------
|
||||||
|
third_party/log.h | 1 +
|
||||||
|
tools/static_check | 10 +++---
|
||||||
|
6 files changed, 113 insertions(+), 48 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lcr.spec b/lcr.spec
|
||||||
|
index 5644fdf..0963e53 100644
|
||||||
|
--- a/lcr.spec
|
||||||
|
+++ b/lcr.spec
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
%global _version 2.0.2
|
||||||
|
-%global _release 20200526.162423.gitf1095eab
|
||||||
|
+%global _release 20200609.145938.gita2be0373
|
||||||
|
%global _inner_name isula_libutils
|
||||||
|
|
||||||
|
Name: lcr
|
||||||
|
diff --git a/tests/json_llt.cpp b/tests/json_llt.cpp
|
||||||
|
index 4a66305..9622ed4 100644
|
||||||
|
--- a/tests/json_llt.cpp
|
||||||
|
+++ b/tests/json_llt.cpp
|
||||||
|
@@ -33,11 +33,11 @@
|
||||||
|
TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
- oci_runtime_spec_hooks *hooks = NULL;
|
||||||
|
+ oci_runtime_spec_hooks *hooks = nullptr;
|
||||||
|
parser_error jerr = nullptr;
|
||||||
|
char *jstr = nullptr;
|
||||||
|
|
||||||
|
- hooks = oci_runtime_spec_hooks_parse_file(fname, NULL, &jerr);
|
||||||
|
+ hooks = oci_runtime_spec_hooks_parse_file(fname, nullptr, &jerr);
|
||||||
|
ASSERT_EQ(jerr, nullptr) << "parse hook failed: " << jerr;
|
||||||
|
ASSERT_NE(hooks, nullptr);
|
||||||
|
|
||||||
|
@@ -82,11 +82,22 @@ TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
TEST(json_testcase, test_json_readfile)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
- char *jstr = NULL;
|
||||||
|
+ const char *not_exist = "/tmp/not_exist.json";
|
||||||
|
+ char *jstr = nullptr;
|
||||||
|
size_t len = 0;
|
||||||
|
|
||||||
|
jstr = read_file(fname, &len);
|
||||||
|
ASSERT_NE(jstr, nullptr);
|
||||||
|
ASSERT_EQ(len, 527);
|
||||||
|
+ free(jstr);
|
||||||
|
+ len = 0;
|
||||||
|
+
|
||||||
|
+ jstr = read_file(not_exist, &len);
|
||||||
|
+ ASSERT_EQ(jstr, nullptr);
|
||||||
|
+ ASSERT_EQ(len, 0);
|
||||||
|
+ len = 0;
|
||||||
|
+
|
||||||
|
+ jstr = read_file(nullptr, nullptr);
|
||||||
|
+ ASSERT_EQ(jstr, nullptr);
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/tests/log_llt.cpp b/tests/log_llt.cpp
|
||||||
|
index 7d4a3d4..dbdebad 100644
|
||||||
|
--- a/tests/log_llt.cpp
|
||||||
|
+++ b/tests/log_llt.cpp
|
||||||
|
@@ -42,7 +42,7 @@ TEST(log_testcases, test_isula_libutils_default_log_config)
|
||||||
|
ASSERT_EQ(tconf.file, nullptr);
|
||||||
|
ASSERT_EQ(tconf.driver, nullptr);
|
||||||
|
EXPECT_STREQ(name, tconf.name);
|
||||||
|
- EXPECT_STREQ("FATAL", tconf.priority);
|
||||||
|
+ EXPECT_STREQ("NOTSET", tconf.priority);
|
||||||
|
|
||||||
|
// not quiet configs check
|
||||||
|
tconf.quiet = false;
|
||||||
|
@@ -79,28 +79,65 @@ TEST(log_testcases, test_isula_libutils_log_enable)
|
||||||
|
struct isula_libutils_log_config tconf = {0};
|
||||||
|
const char *prefix = "fake";
|
||||||
|
const char *prio = "INFO";
|
||||||
|
+ const char *invalid_prio = "INVALID";
|
||||||
|
const char *fname = "/tmp/fake.fifo";
|
||||||
|
int fd = -1;
|
||||||
|
+ int ret = 0;
|
||||||
|
+
|
||||||
|
+ ret = isula_libutils_log_enable(nullptr);
|
||||||
|
+ ASSERT_NE(ret, 0);
|
||||||
|
+ fd = isula_libutils_get_log_fd();
|
||||||
|
+ ASSERT_EQ(fd, -1);
|
||||||
|
|
||||||
|
tconf.driver = ISULA_LOG_DRIVER_FIFO;
|
||||||
|
tconf.prefix = prefix;
|
||||||
|
tconf.priority = prio;
|
||||||
|
+ tconf.file = nullptr;
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_NE(ret, 0);
|
||||||
|
+ fd = isula_libutils_get_log_fd();
|
||||||
|
+ ASSERT_EQ(fd, -1);
|
||||||
|
+
|
||||||
|
+ tconf.driver = nullptr;
|
||||||
|
+ tconf.prefix = prefix;
|
||||||
|
+ tconf.priority = prio;
|
||||||
|
tconf.file = fname;
|
||||||
|
- isula_libutils_log_enable(&tconf);
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_EQ(ret, 0);
|
||||||
|
+ fd = isula_libutils_get_log_fd();
|
||||||
|
+ ASSERT_EQ(fd, -1);
|
||||||
|
|
||||||
|
+ tconf.driver = ISULA_LOG_DRIVER_FIFO;
|
||||||
|
+ tconf.prefix = prefix;
|
||||||
|
+ tconf.priority = invalid_prio;
|
||||||
|
+ tconf.file = fname;
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_EQ(ret, 0);
|
||||||
|
fd = isula_libutils_get_log_fd();
|
||||||
|
ASSERT_GE(fd, 0);
|
||||||
|
+ DEBUG("debug log");
|
||||||
|
+ check_log(fd, false, false, "debug log");
|
||||||
|
+ isula_libutils_log_disable();
|
||||||
|
|
||||||
|
+ tconf.driver = ISULA_LOG_DRIVER_FIFO;
|
||||||
|
+ tconf.prefix = prefix;
|
||||||
|
+ tconf.priority = prio;
|
||||||
|
+ tconf.file = fname;
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_EQ(ret, 0);
|
||||||
|
+ fd = isula_libutils_get_log_fd();
|
||||||
|
+ ASSERT_GE(fd, 0);
|
||||||
|
INFO("info log");
|
||||||
|
check_log(fd, true, true, "info log");
|
||||||
|
-
|
||||||
|
DEBUG("debug log");
|
||||||
|
check_log(fd, false, false, "debug log");
|
||||||
|
+ isula_libutils_log_disable();
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(log_testcases, test_isula_libutils_log_prefix)
|
||||||
|
{
|
||||||
|
struct isula_libutils_log_config tconf = {0};
|
||||||
|
+ const char *default_prefix = "iSula";
|
||||||
|
const char *prefix = "prefix";
|
||||||
|
const char *prio = "INFO";
|
||||||
|
const char *fname = "/tmp/fake.fifo";
|
||||||
|
@@ -121,5 +158,15 @@ TEST(log_testcases, test_isula_libutils_log_prefix)
|
||||||
|
isula_libutils_free_log_prefix();
|
||||||
|
INFO("fake log");
|
||||||
|
check_log(fd, true, false, prefix);
|
||||||
|
+ INFO("fake log");
|
||||||
|
+ check_log(fd, true, true, default_prefix);
|
||||||
|
+
|
||||||
|
+ isula_libutils_set_log_prefix(nullptr);
|
||||||
|
+ INFO("fake log");
|
||||||
|
+ check_log(fd, true, true, default_prefix);
|
||||||
|
+
|
||||||
|
+ isula_libutils_set_log_prefix("");
|
||||||
|
+ INFO("fake log");
|
||||||
|
+ check_log(fd, true, true, default_prefix);
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/third_party/log.c b/third_party/log.c
|
||||||
|
index d0fa541..e8ee9b5 100644
|
||||||
|
--- a/third_party/log.c
|
||||||
|
+++ b/third_party/log.c
|
||||||
|
@@ -79,7 +79,8 @@ void isula_libutils_default_log_config(const char *name, struct isula_libutils_l
|
||||||
|
{
|
||||||
|
log->name = name;
|
||||||
|
log->file = NULL;
|
||||||
|
- log->priority = "FATAL";
|
||||||
|
+ // use to disable log
|
||||||
|
+ log->priority = "NOTSET";
|
||||||
|
if (!log->quiet) {
|
||||||
|
log->driver = ISULA_LOG_DRIVER_STDOUT;
|
||||||
|
}
|
||||||
|
@@ -87,7 +88,7 @@ void isula_libutils_default_log_config(const char *name, struct isula_libutils_l
|
||||||
|
|
||||||
|
void isula_libutils_set_log_prefix(const char *prefix)
|
||||||
|
{
|
||||||
|
- if (prefix == NULL) {
|
||||||
|
+ if (prefix == NULL || strlen(prefix) == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -336,12 +337,45 @@ static int open_fifo(const char *fifo_path)
|
||||||
|
return fifo_fd;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static bool check_log_driver(const struct isula_libutils_log_config *log)
|
||||||
|
+static void clean_pre_init()
|
||||||
|
+{
|
||||||
|
+ g_lxc_log_category_lxc.appender = &log_appender_stderr;
|
||||||
|
+ g_lxc_log_category_lxc.priority = LXC_LOG_LEVEL_ERROR;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static bool init_log_file(const char *fname)
|
||||||
|
+{
|
||||||
|
+ if (fname == NULL) {
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+ if (strcmp(fname, "none") == 0) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+ if (lcr_util_build_dir(fname) != 0) {
|
||||||
|
+ CMD_SYSERROR("build log path \"%s\" failed", fname);
|
||||||
|
+ goto clean_out;
|
||||||
|
+ }
|
||||||
|
+ g_lxc_log_fd = open_fifo(fname);
|
||||||
|
+ if (g_lxc_log_fd == -1) {
|
||||||
|
+ CMD_SYSERROR("Open log fifo \"%s\" failed", fname);
|
||||||
|
+ goto clean_out;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ free(log_fname);
|
||||||
|
+ log_fname = lcr_util_strdup_s(fname);
|
||||||
|
+ return true;
|
||||||
|
+clean_out:
|
||||||
|
+ clean_pre_init();
|
||||||
|
+ return false;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static bool choice_log_driver(const struct isula_libutils_log_config *log)
|
||||||
|
{
|
||||||
|
bool is_fifo = false;
|
||||||
|
|
||||||
|
// if driver is null, mean disable log
|
||||||
|
if (log->driver == NULL) {
|
||||||
|
+ g_lxc_log_category_lxc.priority = LXC_LOG_LEVEL_NOTSET;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
g_lxc_log_category_lxc.appender = &log_appender_logfile;
|
||||||
|
@@ -350,10 +384,11 @@ static bool check_log_driver(const struct isula_libutils_log_config *log)
|
||||||
|
|
||||||
|
// if set file, only use log_append_logfile
|
||||||
|
// we only support fifo driver with file
|
||||||
|
- if (log->file != NULL) {
|
||||||
|
- return is_fifo;
|
||||||
|
- }
|
||||||
|
if (is_fifo) {
|
||||||
|
+ return init_log_file(log->file);
|
||||||
|
+ }
|
||||||
|
+ if (log->file != NULL) {
|
||||||
|
+ clean_pre_init();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -363,16 +398,8 @@ static bool check_log_driver(const struct isula_libutils_log_config *log)
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static void clean_pre_init()
|
||||||
|
-{
|
||||||
|
- g_lxc_log_category_lxc.appender = &log_appender_stderr;
|
||||||
|
-
|
||||||
|
- g_lxc_log_category_lxc.priority = LXC_LOG_LEVEL_ERROR;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
int isula_libutils_log_enable(const struct isula_libutils_log_config *log)
|
||||||
|
{
|
||||||
|
- int ret = 0;
|
||||||
|
int lxc_priority = LXC_LOG_LEVEL_ERROR;
|
||||||
|
|
||||||
|
if (log == NULL)
|
||||||
|
@@ -383,7 +410,7 @@ int isula_libutils_log_enable(const struct isula_libutils_log_config *log)
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (!check_log_driver(log)) {
|
||||||
|
+ if (!choice_log_driver(log)) {
|
||||||
|
COMMAND_ERROR("Invalid log config of driver");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
@@ -395,29 +422,8 @@ int isula_libutils_log_enable(const struct isula_libutils_log_config *log)
|
||||||
|
|
||||||
|
isula_libutils_set_log_prefix(log->prefix != NULL ? log->prefix : log->name);
|
||||||
|
|
||||||
|
- if (log->file) {
|
||||||
|
- if (strcmp(log->file, "none") == 0) {
|
||||||
|
- ret = 0;
|
||||||
|
- goto clean_out;
|
||||||
|
- }
|
||||||
|
- if (lcr_util_build_dir(log->file) != 0) {
|
||||||
|
- CMD_SYSERROR("build log path \"%s\" failed", log->file);
|
||||||
|
- ret = -1;
|
||||||
|
- goto clean_out;
|
||||||
|
- }
|
||||||
|
- g_lxc_log_fd = open_fifo(log->file);
|
||||||
|
- if (g_lxc_log_fd == -1) {
|
||||||
|
- CMD_SYSERROR("Open log fifo \"%s\" failed", log->file);
|
||||||
|
- ret = -1;
|
||||||
|
- goto clean_out;
|
||||||
|
- }
|
||||||
|
- log_fname = lcr_util_strdup_s(log->file);
|
||||||
|
- }
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
-clean_out:
|
||||||
|
- clean_pre_init();
|
||||||
|
- return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void lxc_log_close(void)
|
||||||
|
diff --git a/third_party/log.h b/third_party/log.h
|
||||||
|
index 7f14ce0..2db0d98 100644
|
||||||
|
--- a/third_party/log.h
|
||||||
|
+++ b/third_party/log.h
|
||||||
|
@@ -448,6 +448,7 @@ void isula_libutils_default_log_config(const char *name, struct isula_libutils_l
|
||||||
|
int isula_libutils_log_enable(const struct isula_libutils_log_config *log);
|
||||||
|
void isula_libutils_set_log_prefix(const char *prefix);
|
||||||
|
void isula_libutils_free_log_prefix(void);
|
||||||
|
+void isula_libutils_log_disable();
|
||||||
|
|
||||||
|
int isula_libutils_get_log_fd(void);
|
||||||
|
|
||||||
|
diff --git a/tools/static_check b/tools/static_check
|
||||||
|
index 3a21d65..fd5c8ed 100755
|
||||||
|
--- a/tools/static_check
|
||||||
|
+++ b/tools/static_check
|
||||||
|
@@ -91,7 +91,7 @@ function pclint_check() {
|
||||||
|
local start_time=$(date +%s)
|
||||||
|
local files
|
||||||
|
if [[ ${1} == "all" ]]; then
|
||||||
|
- files=$(find ./src ./test -regextype posix-extended -regex ".*\.(c|cc)")
|
||||||
|
+ files=$(find ./src ./tests -regextype posix-extended -regex ".*\.(c|cc)")
|
||||||
|
else
|
||||||
|
files=$(git diff --name-only HEAD | grep -E "*.c$")
|
||||||
|
fi
|
||||||
|
@@ -157,7 +157,7 @@ function codestyle_check() {
|
||||||
|
local start_time=$(date +%s)
|
||||||
|
local files
|
||||||
|
if [[ ${1} == "all" ]]; then
|
||||||
|
- files=$(find ./src ./test -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
+ files=$(find ./src ./tests -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
else
|
||||||
|
files=$(git diff --name-only HEAD | grep -E "*.h$|*.c$|*.cc$")
|
||||||
|
fi
|
||||||
|
@@ -313,7 +313,7 @@ function astyle_format() {
|
||||||
|
/_/ |_|/____/ /_/ /_//_____//_____/ /_/ \____//_/ |_|/_/ /_//_/ |_|/_/ \033[0m]
|
||||||
|
================================================================================================="
|
||||||
|
local start_time=$(date +%s)
|
||||||
|
- local files=$(find ./src ./test -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
+ local files=$(find ./src ./tests -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
files=(${files// / })
|
||||||
|
local total=${#files[@]}
|
||||||
|
local failure_num=0
|
||||||
|
@@ -368,7 +368,7 @@ echo -e "\
|
||||||
|
local start_time=$(date +%s)
|
||||||
|
local files
|
||||||
|
if [[ ${1} == "all" ]]; then
|
||||||
|
- files=$(find ./src ./test -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
+ files=$(find ./src ./tests -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
else
|
||||||
|
files=$(git diff --name-only HEAD | grep -E "*.h$|*.c$|*.cc$")
|
||||||
|
fi
|
||||||
|
@@ -428,7 +428,7 @@ function cmetrics_check() {
|
||||||
|
local start_time=$(date +%s)
|
||||||
|
local files
|
||||||
|
if [[ ${1} == "all" ]]; then
|
||||||
|
- files=$(find ./src ./test -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
+ files=$(find ./src ./tests -regextype posix-extended -regex ".*\.(h|c|cc)")
|
||||||
|
else
|
||||||
|
files=$(git diff --name-only HEAD | grep -E "*.h$|*.c$|*.cc$")
|
||||||
|
fi
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
246
0005-improve-llt-framework.patch
Normal file
246
0005-improve-llt-framework.patch
Normal file
@ -0,0 +1,246 @@
|
|||||||
|
From d97eb223fea08b12b63aa84f1c67a9a38fd1fee9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Thu, 11 Jun 2020 14:41:55 +0800
|
||||||
|
Subject: [PATCH 05/10] improve llt framework
|
||||||
|
|
||||||
|
1. add hook to run genhtml for llt
|
||||||
|
2. improve llt
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 27 +++++----------------------
|
||||||
|
cmake/checker.cmake | 31 +++++++++++++++++++++++++------
|
||||||
|
cmake/set_build_flags.cmake | 10 ++++++----
|
||||||
|
tests/CMakeLists.txt | 30 ++++++++++++++++++++++++++++++
|
||||||
|
tests/log_llt.cpp | 25 +++++++++++++++++++++++++
|
||||||
|
third_party/log.c | 4 ++--
|
||||||
|
6 files changed, 93 insertions(+), 34 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index c4acf43..dcb4232 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -23,8 +23,6 @@
|
||||||
|
cmake_minimum_required (VERSION 2.8)
|
||||||
|
project (lcr)
|
||||||
|
|
||||||
|
-include(cmake/set_build_flags.cmake)
|
||||||
|
-
|
||||||
|
option(VERSION "set lcr version" ON)
|
||||||
|
if (VERSION STREQUAL "ON")
|
||||||
|
set(LCR_VERSION "2.0.2")
|
||||||
|
@@ -35,10 +33,8 @@ if (DEBUG STREQUAL "ON")
|
||||||
|
add_definitions("-g -o2")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-option(GCOV "set lcr gcov option" OFF)
|
||||||
|
-if (GCOV STREQUAL "ON")
|
||||||
|
- set(LCR_GCOV "ON")
|
||||||
|
-endif()
|
||||||
|
+include(cmake/set_build_flags.cmake)
|
||||||
|
+
|
||||||
|
|
||||||
|
if (LIB_INSTALL_DIR)
|
||||||
|
set(LIB_INSTALL_DIR_DEFAULT ${LIB_INSTALL_DIR})
|
||||||
|
@@ -61,9 +57,6 @@ execute_process(
|
||||||
|
)
|
||||||
|
message("-- commit id: " ${GIT_COMMIT_HASH})
|
||||||
|
|
||||||
|
-set(CMAKE_SHARED_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -Wtrampolines -fPIE -pie -shared -pthread")
|
||||||
|
-set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -Wtrampolines -fPIE -pie")
|
||||||
|
-
|
||||||
|
add_definitions(-DLCRPATH="${CMAKE_INSTALL_PREFIX}/var/lib/lcr")
|
||||||
|
add_definitions(-DLOGPATH="${CMAKE_INSTALL_PREFIX}/var/log/lcr")
|
||||||
|
add_definitions(-DLCR_GIT_COMMIT="${GIT_COMMIT_HASH}")
|
||||||
|
@@ -88,24 +81,14 @@ else ()
|
||||||
|
message("-- Build static library")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-# llt and coverage
|
||||||
|
-SET(CMAKE_VERBOSE_MAKEFILE OFF)
|
||||||
|
-OPTION(ENABLE_COVERAGE "coverage switch" OFF)
|
||||||
|
-IF(ENABLE_COVERAGE)
|
||||||
|
- MESSAGE(STATUS "Enable coverage compile option")
|
||||||
|
- SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -fprofile-arcs -ftest-coverage")
|
||||||
|
- SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g -fprofile-arcs -ftest-coverage")
|
||||||
|
- SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -g -fprofile-arcs -ftest-coverage -lgcov")
|
||||||
|
-ENDIF(ENABLE_COVERAGE)
|
||||||
|
-
|
||||||
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party)
|
||||||
|
|
||||||
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||||
|
|
||||||
|
-OPTION(ENABLE_LLT "llt switch" OFF)
|
||||||
|
-IF(ENABLE_LLT)
|
||||||
|
+# llt and gcoverage
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
add_subdirectory(tests)
|
||||||
|
-ENDIF(ENABLE_LLT)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
# install all files
|
||||||
|
install(FILES ${CMAKE_BINARY_DIR}/conf/lcr.pc
|
||||||
|
diff --git a/cmake/checker.cmake b/cmake/checker.cmake
|
||||||
|
index c527442..20ad917 100644
|
||||||
|
--- a/cmake/checker.cmake
|
||||||
|
+++ b/cmake/checker.cmake
|
||||||
|
@@ -69,11 +69,30 @@ find_library(LIBYAJL_LIBRARY yajl
|
||||||
|
HINTS ${PC_LIBYAJL_LIBDIR} ${PC_LIBYAJL_LIBRARY_DIRS})
|
||||||
|
_CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so")
|
||||||
|
|
||||||
|
-if (ENABLE_TESTS STREQUAL "ON")
|
||||||
|
- pkg_check_modules(PC_CHECK REQUIRED "check>=0.9.12")
|
||||||
|
- if (NOT PC_CHECK_FOUND)
|
||||||
|
- message("error: can not find check>=0.9.12")
|
||||||
|
- set(CHECKER_RESULT 1)
|
||||||
|
- endif()
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
+ pkg_check_modules(PC_GTEST "gtest")
|
||||||
|
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h
|
||||||
|
+ HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
|
||||||
|
+ _CHECK(GTEST_INCLUDE_DIR "GTEST_INCLUDE_DIR-NOTFOUND" "gtest.h")
|
||||||
|
+ find_library(GTEST_LIBRARY gtest
|
||||||
|
+ HINTS ${PC_GTEST_LIBDIR} ${PC_GTEST_LIBRARY_DIRS})
|
||||||
|
+ _CHECK(GTEST_LIBRARY "GTEST_LIBRARY-NOTFOUND" "libgtest.so")
|
||||||
|
+
|
||||||
|
+ pkg_check_modules(PC_GMOCK "gmock")
|
||||||
|
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
|
||||||
|
+ HINTS ${PC_GMOCK_INCLUDEDIR} ${PC_GMOCK_INCLUDE_DIRS})
|
||||||
|
+ _CHECK(GMOCK_INCLUDE_DIR "GMOCK_INCLUDE_DIR-NOTFOUND" "gmock.h")
|
||||||
|
+ find_library(GMOCK_LIBRARY z
|
||||||
|
+ HINTS ${PC_GMOCK_LIBDIR} ${PC_GMOCK_LIBRARY_DIRS})
|
||||||
|
+ _CHECK(GMOCK_LIBRARY "GMOCK_LIBRARY-NOTFOUND" "libgmock.so")
|
||||||
|
+
|
||||||
|
+ find_program(CMD_GCOV gcov)
|
||||||
|
+ _CHECK(CMD_GCOV "CMD_GCOV-NOTFOUND" "gcov")
|
||||||
|
+
|
||||||
|
+ find_program(CMD_LCOV lcov)
|
||||||
|
+ _CHECK(CMD_LCOV "CMD_LCOV-NOTFOUND" "lcov")
|
||||||
|
+
|
||||||
|
+ find_program(CMD_GENHTML genhtml)
|
||||||
|
+ _CHECK(CMD_GENHTML "CMD_GENHTML-NOTFOUND" "genhtml")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
diff --git a/cmake/set_build_flags.cmake b/cmake/set_build_flags.cmake
|
||||||
|
index 46ba3c9..9aab5e1 100644
|
||||||
|
--- a/cmake/set_build_flags.cmake
|
||||||
|
+++ b/cmake/set_build_flags.cmake
|
||||||
|
@@ -29,11 +29,13 @@ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -W
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
|
||||||
|
+option(LCR_GCOV "set lcr gcov option" OFF)
|
||||||
|
if (LCR_GCOV)
|
||||||
|
- set(CMAKE_C_FLAGS_DEBUG "-Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
- set(CMAKE_CXX_FLAGS_DEBUG "-Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
- message("-----CXXFLAGS: " ${CMAKE_CXX_FLAGS_DEBUG})
|
||||||
|
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
+ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
||||||
|
+ message("-----CXXFLAGS: " ${CMAKE_CXX_FLAGS})
|
||||||
|
message("------compile with gcov-------------")
|
||||||
|
- message("-----CFLAGS: " ${CMAKE_C_FLAGS_DEBUG})
|
||||||
|
+ message("-----CFLAGS: " ${CMAKE_C_FLAGS})
|
||||||
|
message("------------------------------------")
|
||||||
|
endif()
|
||||||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||||
|
index 2d414ca..15708dd 100644
|
||||||
|
--- a/tests/CMakeLists.txt
|
||||||
|
+++ b/tests/CMakeLists.txt
|
||||||
|
@@ -64,5 +64,35 @@ endmacro()
|
||||||
|
_DEFINE_NEW_TEST(log_llt log_testcase)
|
||||||
|
_DEFINE_NEW_TEST(json_llt json_testcase)
|
||||||
|
|
||||||
|
+# mock test for run lcov to generate html
|
||||||
|
+add_executable(mock_llt main.cpp)
|
||||||
|
+target_include_directories(mock_llt PUBLIC
|
||||||
|
+ ${GTEST_INCLUDE_DIR}
|
||||||
|
+ PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
+ )
|
||||||
|
+target_link_libraries(mock_llt
|
||||||
|
+ gtest
|
||||||
|
+ pthread
|
||||||
|
+ )
|
||||||
|
+add_dependencies(mock_llt log_llt json_llt)
|
||||||
|
+
|
||||||
|
+set(result isula_libutils.info)
|
||||||
|
+set(result_dir lcr_gcovs)
|
||||||
|
+set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
+
|
||||||
|
+# generate gcov
|
||||||
|
+
|
||||||
|
+add_custom_command(TARGET mock_llt
|
||||||
|
+ POST_BUILD
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
+ COMMAND "ctest"
|
||||||
|
+ COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
+ COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo LLT finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
# --------------- testcase add finish -----------------
|
||||||
|
|
||||||
|
diff --git a/tests/log_llt.cpp b/tests/log_llt.cpp
|
||||||
|
index dbdebad..a047f57 100644
|
||||||
|
--- a/tests/log_llt.cpp
|
||||||
|
+++ b/tests/log_llt.cpp
|
||||||
|
@@ -107,6 +107,31 @@ TEST(log_testcases, test_isula_libutils_log_enable)
|
||||||
|
fd = isula_libutils_get_log_fd();
|
||||||
|
ASSERT_EQ(fd, -1);
|
||||||
|
|
||||||
|
+ tconf.driver = ISULA_LOG_DRIVER_STDOUT;
|
||||||
|
+ tconf.prefix = prefix;
|
||||||
|
+ tconf.priority = prio;
|
||||||
|
+ tconf.file = fname;
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_NE(ret, 0);
|
||||||
|
+ isula_libutils_log_disable();
|
||||||
|
+
|
||||||
|
+ tconf.driver = ISULA_LOG_DRIVER_STDOUT;
|
||||||
|
+ tconf.prefix = prefix;
|
||||||
|
+ tconf.priority = prio;
|
||||||
|
+ tconf.file = nullptr;
|
||||||
|
+ ret = isula_libutils_log_enable(&tconf);
|
||||||
|
+ ASSERT_EQ(ret, 0);
|
||||||
|
+ TRACE("trace log");
|
||||||
|
+ DEBUG("debug log");
|
||||||
|
+ INFO("info log");
|
||||||
|
+ NOTICE("notice log");
|
||||||
|
+ WARN("warn log");
|
||||||
|
+ ERROR("error log");
|
||||||
|
+ EVENT("event log");
|
||||||
|
+ CRIT("crit log");
|
||||||
|
+ FATAL("fatal log");
|
||||||
|
+ isula_libutils_log_disable();
|
||||||
|
+
|
||||||
|
tconf.driver = ISULA_LOG_DRIVER_FIFO;
|
||||||
|
tconf.prefix = prefix;
|
||||||
|
tconf.priority = invalid_prio;
|
||||||
|
diff --git a/third_party/log.c b/third_party/log.c
|
||||||
|
index e8ee9b5..83de005 100644
|
||||||
|
--- a/third_party/log.c
|
||||||
|
+++ b/third_party/log.c
|
||||||
|
@@ -80,7 +80,7 @@ void isula_libutils_default_log_config(const char *name, struct isula_libutils_l
|
||||||
|
log->name = name;
|
||||||
|
log->file = NULL;
|
||||||
|
// use to disable log
|
||||||
|
- log->priority = "NOTSET";
|
||||||
|
+ log->priority = "FATAL";
|
||||||
|
if (!log->quiet) {
|
||||||
|
log->driver = ISULA_LOG_DRIVER_STDOUT;
|
||||||
|
}
|
||||||
|
@@ -375,7 +375,7 @@ static bool choice_log_driver(const struct isula_libutils_log_config *log)
|
||||||
|
|
||||||
|
// if driver is null, mean disable log
|
||||||
|
if (log->driver == NULL) {
|
||||||
|
- g_lxc_log_category_lxc.priority = LXC_LOG_LEVEL_NOTSET;
|
||||||
|
+ g_lxc_log_category_lxc.priority = LXC_LOG_LEVEL_FATAL;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
g_lxc_log_category_lxc.appender = &log_appender_logfile;
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
26
0006-fix-log-test-error.patch
Normal file
26
0006-fix-log-test-error.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 02054466c71822e197499b0271cfed57c96598b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Thu, 11 Jun 2020 15:14:48 +0800
|
||||||
|
Subject: [PATCH 06/10] fix log test error
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
tests/log_llt.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/log_llt.cpp b/tests/log_llt.cpp
|
||||||
|
index a047f57..8944b38 100644
|
||||||
|
--- a/tests/log_llt.cpp
|
||||||
|
+++ b/tests/log_llt.cpp
|
||||||
|
@@ -42,7 +42,7 @@ TEST(log_testcases, test_isula_libutils_default_log_config)
|
||||||
|
ASSERT_EQ(tconf.file, nullptr);
|
||||||
|
ASSERT_EQ(tconf.driver, nullptr);
|
||||||
|
EXPECT_STREQ(name, tconf.name);
|
||||||
|
- EXPECT_STREQ("NOTSET", tconf.priority);
|
||||||
|
+ EXPECT_STREQ("FATAL", tconf.priority);
|
||||||
|
|
||||||
|
// not quiet configs check
|
||||||
|
tconf.quiet = false;
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
26
0007-improve-html-show-result.patch
Normal file
26
0007-improve-html-show-result.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From abc0b5907d4b50729aa83a4c41d4a7e02d857aea Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Thu, 11 Jun 2020 15:48:32 +0800
|
||||||
|
Subject: [PATCH 07/10] improve html show result
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
tests/CMakeLists.txt | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||||
|
index 15708dd..ca6d164 100644
|
||||||
|
--- a/tests/CMakeLists.txt
|
||||||
|
+++ b/tests/CMakeLists.txt
|
||||||
|
@@ -87,7 +87,7 @@ add_custom_command(TARGET mock_llt
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
COMMAND "ctest"
|
||||||
|
- COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
+ COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo LLT finish
|
||||||
|
VERBATIM
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
189
0008-change-tests-name.patch
Normal file
189
0008-change-tests-name.patch
Normal file
@ -0,0 +1,189 @@
|
|||||||
|
From cb27a1612fdba43b94e9af1232da4378205c4c8a Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Sat, 13 Jun 2020 10:32:28 +0800
|
||||||
|
Subject: [PATCH 08/10] change tests name
|
||||||
|
|
||||||
|
1. change name of tests
|
||||||
|
2. default to run tests after build
|
||||||
|
3. use option to manage gcov
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 6 +--
|
||||||
|
cmake/checker.cmake | 2 +-
|
||||||
|
cmake/set_build_flags.cmake | 4 +-
|
||||||
|
src/CMakeLists.txt | 4 --
|
||||||
|
tests/CMakeLists.txt | 54 ++++++++++++++---------
|
||||||
|
tests/{json_llt.cpp => libocispec_ut.cpp} | 4 +-
|
||||||
|
tests/{log_llt.cpp => log_ut.cpp} | 0
|
||||||
|
7 files changed, 39 insertions(+), 35 deletions(-)
|
||||||
|
rename tests/{json_llt.cpp => libocispec_ut.cpp} (97%)
|
||||||
|
rename tests/{log_llt.cpp => log_ut.cpp} (100%)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index dcb4232..53e985f 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -85,10 +85,8 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party)
|
||||||
|
|
||||||
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||||
|
|
||||||
|
-# llt and gcoverage
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
- add_subdirectory(tests)
|
||||||
|
-endif()
|
||||||
|
+# ut and gcoverage
|
||||||
|
+add_subdirectory(tests)
|
||||||
|
|
||||||
|
# install all files
|
||||||
|
install(FILES ${CMAKE_BINARY_DIR}/conf/lcr.pc
|
||||||
|
diff --git a/cmake/checker.cmake b/cmake/checker.cmake
|
||||||
|
index 20ad917..7f8e9cc 100644
|
||||||
|
--- a/cmake/checker.cmake
|
||||||
|
+++ b/cmake/checker.cmake
|
||||||
|
@@ -69,7 +69,7 @@ find_library(LIBYAJL_LIBRARY yajl
|
||||||
|
HINTS ${PC_LIBYAJL_LIBDIR} ${PC_LIBYAJL_LIBRARY_DIRS})
|
||||||
|
_CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so")
|
||||||
|
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
pkg_check_modules(PC_GTEST "gtest")
|
||||||
|
find_path(GTEST_INCLUDE_DIR gtest/gtest.h
|
||||||
|
HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
|
||||||
|
diff --git a/cmake/set_build_flags.cmake b/cmake/set_build_flags.cmake
|
||||||
|
index 9aab5e1..87cab3e 100644
|
||||||
|
--- a/cmake/set_build_flags.cmake
|
||||||
|
+++ b/cmake/set_build_flags.cmake
|
||||||
|
@@ -29,8 +29,8 @@ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -W
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
|
||||||
|
-option(LCR_GCOV "set lcr gcov option" OFF)
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
+option(ENABLE_GCOV "set lcr gcov option" OFF)
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index 5e09c93..6ed2d95 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -103,10 +103,6 @@ if (CMAKE_TOOLCHAIN_FILE)
|
||||||
|
target_link_libraries(liblcr ${EXTRAL_LINK_LIBS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
- target_link_libraries(liblcr -lgcov)
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
# install all files
|
||||||
|
install(TARGETS liblcr
|
||||||
|
LIBRARY DESTINATION ${LIB_INSTALL_DIR_DEFAULT} PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE)
|
||||||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||||
|
index ca6d164..58a6fad 100644
|
||||||
|
--- a/tests/CMakeLists.txt
|
||||||
|
+++ b/tests/CMakeLists.txt
|
||||||
|
@@ -61,38 +61,48 @@ endmacro()
|
||||||
|
|
||||||
|
# --------------- testcase add here -----------------
|
||||||
|
# api testcase
|
||||||
|
-_DEFINE_NEW_TEST(log_llt log_testcase)
|
||||||
|
-_DEFINE_NEW_TEST(json_llt json_testcase)
|
||||||
|
+_DEFINE_NEW_TEST(log_ut log_testcase)
|
||||||
|
+_DEFINE_NEW_TEST(libocispec_ut json_testcase)
|
||||||
|
+
|
||||||
|
|
||||||
|
# mock test for run lcov to generate html
|
||||||
|
-add_executable(mock_llt main.cpp)
|
||||||
|
-target_include_directories(mock_llt PUBLIC
|
||||||
|
+add_executable(mock_ut main.cpp)
|
||||||
|
+target_include_directories(mock_ut PUBLIC
|
||||||
|
${GTEST_INCLUDE_DIR}
|
||||||
|
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
-target_link_libraries(mock_llt
|
||||||
|
+target_link_libraries(mock_ut
|
||||||
|
gtest
|
||||||
|
pthread
|
||||||
|
)
|
||||||
|
-add_dependencies(mock_llt log_llt json_llt)
|
||||||
|
-
|
||||||
|
-set(result isula_libutils.info)
|
||||||
|
-set(result_dir lcr_gcovs)
|
||||||
|
-set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
+add_dependencies(mock_ut log_ut libocispec_ut)
|
||||||
|
|
||||||
|
-# generate gcov
|
||||||
|
+# run ut and gcov
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
+ set(result isula_libutils.info)
|
||||||
|
+ set(result_dir lcr_gcovs)
|
||||||
|
+ set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
|
||||||
|
-add_custom_command(TARGET mock_llt
|
||||||
|
- POST_BUILD
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
- COMMAND "ctest"
|
||||||
|
- COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
- COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E echo LLT finish
|
||||||
|
- VERBATIM
|
||||||
|
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
- )
|
||||||
|
+ add_custom_command(TARGET mock_ut
|
||||||
|
+ POST_BUILD
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
+ COMMAND "ctest"
|
||||||
|
+ COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
+ COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo run gcov finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
+else()
|
||||||
|
+ add_custom_command(TARGET mock_ut
|
||||||
|
+ PRE_BUILD
|
||||||
|
+ COMMAND "ctest"
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo UT finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
# --------------- testcase add finish -----------------
|
||||||
|
|
||||||
|
diff --git a/tests/json_llt.cpp b/tests/libocispec_ut.cpp
|
||||||
|
similarity index 97%
|
||||||
|
rename from tests/json_llt.cpp
|
||||||
|
rename to tests/libocispec_ut.cpp
|
||||||
|
index 9622ed4..58a1f52 100644
|
||||||
|
--- a/tests/json_llt.cpp
|
||||||
|
+++ b/tests/libocispec_ut.cpp
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
#include "read_file.h"
|
||||||
|
#include "oci_runtime_hooks.h"
|
||||||
|
|
||||||
|
-TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
+TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
oci_runtime_spec_hooks *hooks = nullptr;
|
||||||
|
@@ -79,7 +79,7 @@ TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
free(jstr);
|
||||||
|
}
|
||||||
|
|
||||||
|
-TEST(json_testcase, test_json_readfile)
|
||||||
|
+TEST(libocispec_testcase, test_json_readfile)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
const char *not_exist = "/tmp/not_exist.json";
|
||||||
|
diff --git a/tests/log_llt.cpp b/tests/log_ut.cpp
|
||||||
|
similarity index 100%
|
||||||
|
rename from tests/log_llt.cpp
|
||||||
|
rename to tests/log_ut.cpp
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
188
0009-Pull-Request-49-change-name-of-testcases.patch
Normal file
188
0009-Pull-Request-49-change-name-of-testcases.patch
Normal file
@ -0,0 +1,188 @@
|
|||||||
|
From c1cd034cf73b483c4c120c789c188ee64d19f7d3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: lifeng_isula <lifeng68@huawei.com>
|
||||||
|
Date: Mon, 15 Jun 2020 10:39:15 +0800
|
||||||
|
Subject: [PATCH 09/10] =?UTF-8?q?=E5=9B=9E=E9=80=80=20'Pull=20Request=20!4?=
|
||||||
|
=?UTF-8?q?9=20:=20change=20name=20of=20testcases'?=
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 6 ++-
|
||||||
|
cmake/checker.cmake | 2 +-
|
||||||
|
cmake/set_build_flags.cmake | 4 +-
|
||||||
|
src/CMakeLists.txt | 4 ++
|
||||||
|
tests/CMakeLists.txt | 54 +++++++++--------------
|
||||||
|
tests/{libocispec_ut.cpp => json_llt.cpp} | 4 +-
|
||||||
|
tests/{log_ut.cpp => log_llt.cpp} | 0
|
||||||
|
7 files changed, 35 insertions(+), 39 deletions(-)
|
||||||
|
rename tests/{libocispec_ut.cpp => json_llt.cpp} (97%)
|
||||||
|
rename tests/{log_ut.cpp => log_llt.cpp} (100%)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 53e985f..dcb4232 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -85,8 +85,10 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party)
|
||||||
|
|
||||||
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||||
|
|
||||||
|
-# ut and gcoverage
|
||||||
|
-add_subdirectory(tests)
|
||||||
|
+# llt and gcoverage
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
+ add_subdirectory(tests)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
# install all files
|
||||||
|
install(FILES ${CMAKE_BINARY_DIR}/conf/lcr.pc
|
||||||
|
diff --git a/cmake/checker.cmake b/cmake/checker.cmake
|
||||||
|
index 7f8e9cc..20ad917 100644
|
||||||
|
--- a/cmake/checker.cmake
|
||||||
|
+++ b/cmake/checker.cmake
|
||||||
|
@@ -69,7 +69,7 @@ find_library(LIBYAJL_LIBRARY yajl
|
||||||
|
HINTS ${PC_LIBYAJL_LIBDIR} ${PC_LIBYAJL_LIBRARY_DIRS})
|
||||||
|
_CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so")
|
||||||
|
|
||||||
|
-if (ENABLE_GCOV)
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
pkg_check_modules(PC_GTEST "gtest")
|
||||||
|
find_path(GTEST_INCLUDE_DIR gtest/gtest.h
|
||||||
|
HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
|
||||||
|
diff --git a/cmake/set_build_flags.cmake b/cmake/set_build_flags.cmake
|
||||||
|
index 87cab3e..9aab5e1 100644
|
||||||
|
--- a/cmake/set_build_flags.cmake
|
||||||
|
+++ b/cmake/set_build_flags.cmake
|
||||||
|
@@ -29,8 +29,8 @@ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -W
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
|
||||||
|
-option(ENABLE_GCOV "set lcr gcov option" OFF)
|
||||||
|
-if (ENABLE_GCOV)
|
||||||
|
+option(LCR_GCOV "set lcr gcov option" OFF)
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index 6ed2d95..5e09c93 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -103,6 +103,10 @@ if (CMAKE_TOOLCHAIN_FILE)
|
||||||
|
target_link_libraries(liblcr ${EXTRAL_LINK_LIBS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
+if (LCR_GCOV)
|
||||||
|
+ target_link_libraries(liblcr -lgcov)
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
# install all files
|
||||||
|
install(TARGETS liblcr
|
||||||
|
LIBRARY DESTINATION ${LIB_INSTALL_DIR_DEFAULT} PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE)
|
||||||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||||
|
index 58a6fad..ca6d164 100644
|
||||||
|
--- a/tests/CMakeLists.txt
|
||||||
|
+++ b/tests/CMakeLists.txt
|
||||||
|
@@ -61,48 +61,38 @@ endmacro()
|
||||||
|
|
||||||
|
# --------------- testcase add here -----------------
|
||||||
|
# api testcase
|
||||||
|
-_DEFINE_NEW_TEST(log_ut log_testcase)
|
||||||
|
-_DEFINE_NEW_TEST(libocispec_ut json_testcase)
|
||||||
|
-
|
||||||
|
+_DEFINE_NEW_TEST(log_llt log_testcase)
|
||||||
|
+_DEFINE_NEW_TEST(json_llt json_testcase)
|
||||||
|
|
||||||
|
# mock test for run lcov to generate html
|
||||||
|
-add_executable(mock_ut main.cpp)
|
||||||
|
-target_include_directories(mock_ut PUBLIC
|
||||||
|
+add_executable(mock_llt main.cpp)
|
||||||
|
+target_include_directories(mock_llt PUBLIC
|
||||||
|
${GTEST_INCLUDE_DIR}
|
||||||
|
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
-target_link_libraries(mock_ut
|
||||||
|
+target_link_libraries(mock_llt
|
||||||
|
gtest
|
||||||
|
pthread
|
||||||
|
)
|
||||||
|
-add_dependencies(mock_ut log_ut libocispec_ut)
|
||||||
|
+add_dependencies(mock_llt log_llt json_llt)
|
||||||
|
|
||||||
|
-# run ut and gcov
|
||||||
|
-if (ENABLE_GCOV)
|
||||||
|
- set(result isula_libutils.info)
|
||||||
|
- set(result_dir lcr_gcovs)
|
||||||
|
- set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
+set(result isula_libutils.info)
|
||||||
|
+set(result_dir lcr_gcovs)
|
||||||
|
+set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
|
||||||
|
- add_custom_command(TARGET mock_ut
|
||||||
|
- POST_BUILD
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
- COMMAND "ctest"
|
||||||
|
- COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
- COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E echo run gcov finish
|
||||||
|
- VERBATIM
|
||||||
|
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
- )
|
||||||
|
-else()
|
||||||
|
- add_custom_command(TARGET mock_ut
|
||||||
|
- PRE_BUILD
|
||||||
|
- COMMAND "ctest"
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E echo UT finish
|
||||||
|
- VERBATIM
|
||||||
|
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
- )
|
||||||
|
-endif()
|
||||||
|
+# generate gcov
|
||||||
|
+
|
||||||
|
+add_custom_command(TARGET mock_llt
|
||||||
|
+ POST_BUILD
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
+ COMMAND "ctest"
|
||||||
|
+ COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
+ COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo LLT finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
|
||||||
|
# --------------- testcase add finish -----------------
|
||||||
|
|
||||||
|
diff --git a/tests/libocispec_ut.cpp b/tests/json_llt.cpp
|
||||||
|
similarity index 97%
|
||||||
|
rename from tests/libocispec_ut.cpp
|
||||||
|
rename to tests/json_llt.cpp
|
||||||
|
index 58a1f52..9622ed4 100644
|
||||||
|
--- a/tests/libocispec_ut.cpp
|
||||||
|
+++ b/tests/json_llt.cpp
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
#include "read_file.h"
|
||||||
|
#include "oci_runtime_hooks.h"
|
||||||
|
|
||||||
|
-TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
+TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
oci_runtime_spec_hooks *hooks = nullptr;
|
||||||
|
@@ -79,7 +79,7 @@ TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
free(jstr);
|
||||||
|
}
|
||||||
|
|
||||||
|
-TEST(libocispec_testcase, test_json_readfile)
|
||||||
|
+TEST(json_testcase, test_json_readfile)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
const char *not_exist = "/tmp/not_exist.json";
|
||||||
|
diff --git a/tests/log_ut.cpp b/tests/log_llt.cpp
|
||||||
|
similarity index 100%
|
||||||
|
rename from tests/log_ut.cpp
|
||||||
|
rename to tests/log_llt.cpp
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
227
0010-change-tests-name.patch
Normal file
227
0010-change-tests-name.patch
Normal file
@ -0,0 +1,227 @@
|
|||||||
|
From 71eb58f5a5002faf6ad4bc1a77cbf483d06f27c9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: haozi007 <liuhao27@huawei.com>
|
||||||
|
Date: Tue, 16 Jun 2020 14:40:10 +0800
|
||||||
|
Subject: [PATCH 10/10] change tests name
|
||||||
|
|
||||||
|
Signed-off-by: haozi007 <liuhao27@huawei.com>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 6 +--
|
||||||
|
cmake/checker.cmake | 30 ++++++------
|
||||||
|
cmake/set_build_flags.cmake | 4 +-
|
||||||
|
src/CMakeLists.txt | 4 --
|
||||||
|
tests/CMakeLists.txt | 60 +++++++++++++----------
|
||||||
|
tests/{json_llt.cpp => libocispec_ut.cpp} | 4 +-
|
||||||
|
tests/{log_llt.cpp => log_ut.cpp} | 0
|
||||||
|
7 files changed, 56 insertions(+), 52 deletions(-)
|
||||||
|
rename tests/{json_llt.cpp => libocispec_ut.cpp} (97%)
|
||||||
|
rename tests/{log_llt.cpp => log_ut.cpp} (100%)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index dcb4232..53e985f 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -85,10 +85,8 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party)
|
||||||
|
|
||||||
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||||
|
|
||||||
|
-# llt and gcoverage
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
- add_subdirectory(tests)
|
||||||
|
-endif()
|
||||||
|
+# ut and gcoverage
|
||||||
|
+add_subdirectory(tests)
|
||||||
|
|
||||||
|
# install all files
|
||||||
|
install(FILES ${CMAKE_BINARY_DIR}/conf/lcr.pc
|
||||||
|
diff --git a/cmake/checker.cmake b/cmake/checker.cmake
|
||||||
|
index 20ad917..dde41a6 100644
|
||||||
|
--- a/cmake/checker.cmake
|
||||||
|
+++ b/cmake/checker.cmake
|
||||||
|
@@ -69,23 +69,23 @@ find_library(LIBYAJL_LIBRARY yajl
|
||||||
|
HINTS ${PC_LIBYAJL_LIBDIR} ${PC_LIBYAJL_LIBRARY_DIRS})
|
||||||
|
_CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so")
|
||||||
|
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
- pkg_check_modules(PC_GTEST "gtest")
|
||||||
|
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h
|
||||||
|
- HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
|
||||||
|
- _CHECK(GTEST_INCLUDE_DIR "GTEST_INCLUDE_DIR-NOTFOUND" "gtest.h")
|
||||||
|
- find_library(GTEST_LIBRARY gtest
|
||||||
|
- HINTS ${PC_GTEST_LIBDIR} ${PC_GTEST_LIBRARY_DIRS})
|
||||||
|
- _CHECK(GTEST_LIBRARY "GTEST_LIBRARY-NOTFOUND" "libgtest.so")
|
||||||
|
+pkg_check_modules(PC_GTEST "gtest")
|
||||||
|
+find_path(GTEST_INCLUDE_DIR gtest/gtest.h
|
||||||
|
+ HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
|
||||||
|
+_CHECK(GTEST_INCLUDE_DIR "GTEST_INCLUDE_DIR-NOTFOUND" "gtest.h")
|
||||||
|
+find_library(GTEST_LIBRARY gtest
|
||||||
|
+ HINTS ${PC_GTEST_LIBDIR} ${PC_GTEST_LIBRARY_DIRS})
|
||||||
|
+_CHECK(GTEST_LIBRARY "GTEST_LIBRARY-NOTFOUND" "libgtest.so")
|
||||||
|
|
||||||
|
- pkg_check_modules(PC_GMOCK "gmock")
|
||||||
|
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
|
||||||
|
- HINTS ${PC_GMOCK_INCLUDEDIR} ${PC_GMOCK_INCLUDE_DIRS})
|
||||||
|
- _CHECK(GMOCK_INCLUDE_DIR "GMOCK_INCLUDE_DIR-NOTFOUND" "gmock.h")
|
||||||
|
- find_library(GMOCK_LIBRARY z
|
||||||
|
- HINTS ${PC_GMOCK_LIBDIR} ${PC_GMOCK_LIBRARY_DIRS})
|
||||||
|
- _CHECK(GMOCK_LIBRARY "GMOCK_LIBRARY-NOTFOUND" "libgmock.so")
|
||||||
|
+pkg_check_modules(PC_GMOCK "gmock")
|
||||||
|
+find_path(GMOCK_INCLUDE_DIR gmock/gmock.h
|
||||||
|
+ HINTS ${PC_GMOCK_INCLUDEDIR} ${PC_GMOCK_INCLUDE_DIRS})
|
||||||
|
+_CHECK(GMOCK_INCLUDE_DIR "GMOCK_INCLUDE_DIR-NOTFOUND" "gmock.h")
|
||||||
|
+find_library(GMOCK_LIBRARY z
|
||||||
|
+ HINTS ${PC_GMOCK_LIBDIR} ${PC_GMOCK_LIBRARY_DIRS})
|
||||||
|
+_CHECK(GMOCK_LIBRARY "GMOCK_LIBRARY-NOTFOUND" "libgmock.so")
|
||||||
|
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
find_program(CMD_GCOV gcov)
|
||||||
|
_CHECK(CMD_GCOV "CMD_GCOV-NOTFOUND" "gcov")
|
||||||
|
|
||||||
|
diff --git a/cmake/set_build_flags.cmake b/cmake/set_build_flags.cmake
|
||||||
|
index 9aab5e1..87cab3e 100644
|
||||||
|
--- a/cmake/set_build_flags.cmake
|
||||||
|
+++ b/cmake/set_build_flags.cmake
|
||||||
|
@@ -29,8 +29,8 @@ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -W
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
|
||||||
|
|
||||||
|
-option(LCR_GCOV "set lcr gcov option" OFF)
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
+option(ENABLE_GCOV "set lcr gcov option" OFF)
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
|
||||||
|
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index 5e09c93..6ed2d95 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -103,10 +103,6 @@ if (CMAKE_TOOLCHAIN_FILE)
|
||||||
|
target_link_libraries(liblcr ${EXTRAL_LINK_LIBS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-if (LCR_GCOV)
|
||||||
|
- target_link_libraries(liblcr -lgcov)
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
# install all files
|
||||||
|
install(TARGETS liblcr
|
||||||
|
LIBRARY DESTINATION ${LIB_INSTALL_DIR_DEFAULT} PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE)
|
||||||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||||
|
index ca6d164..89eb6cf 100644
|
||||||
|
--- a/tests/CMakeLists.txt
|
||||||
|
+++ b/tests/CMakeLists.txt
|
||||||
|
@@ -37,8 +37,8 @@ macro(_DEFINE_NEW_TEST)
|
||||||
|
|
||||||
|
target_link_libraries(${ARGV0}
|
||||||
|
isula_libutils
|
||||||
|
- gtest
|
||||||
|
- -lyajl
|
||||||
|
+ ${GTEST_LIBRARY}
|
||||||
|
+ ${LIBYAJL_LIBRARY}
|
||||||
|
pthread
|
||||||
|
)
|
||||||
|
|
||||||
|
@@ -61,38 +61,48 @@ endmacro()
|
||||||
|
|
||||||
|
# --------------- testcase add here -----------------
|
||||||
|
# api testcase
|
||||||
|
-_DEFINE_NEW_TEST(log_llt log_testcase)
|
||||||
|
-_DEFINE_NEW_TEST(json_llt json_testcase)
|
||||||
|
+_DEFINE_NEW_TEST(log_ut log_testcase)
|
||||||
|
+_DEFINE_NEW_TEST(libocispec_ut libocispec_testcase)
|
||||||
|
+
|
||||||
|
|
||||||
|
# mock test for run lcov to generate html
|
||||||
|
-add_executable(mock_llt main.cpp)
|
||||||
|
-target_include_directories(mock_llt PUBLIC
|
||||||
|
+add_executable(mock_ut main.cpp)
|
||||||
|
+target_include_directories(mock_ut PUBLIC
|
||||||
|
${GTEST_INCLUDE_DIR}
|
||||||
|
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
-target_link_libraries(mock_llt
|
||||||
|
- gtest
|
||||||
|
+target_link_libraries(mock_ut
|
||||||
|
+ ${GTEST_LIBRARY}
|
||||||
|
pthread
|
||||||
|
)
|
||||||
|
-add_dependencies(mock_llt log_llt json_llt)
|
||||||
|
-
|
||||||
|
-set(result isula_libutils.info)
|
||||||
|
-set(result_dir lcr_gcovs)
|
||||||
|
-set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
+add_dependencies(mock_ut log_ut libocispec_ut)
|
||||||
|
|
||||||
|
-# generate gcov
|
||||||
|
+# run ut and gcov
|
||||||
|
+if (ENABLE_GCOV)
|
||||||
|
+ set(result isula_libutils.info)
|
||||||
|
+ set(result_dir lcr_gcovs)
|
||||||
|
+ set(target_dir src/CMakeFiles/isula_libutils.dir)
|
||||||
|
|
||||||
|
-add_custom_command(TARGET mock_llt
|
||||||
|
- POST_BUILD
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
- COMMAND "ctest"
|
||||||
|
- COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
- COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E echo LLT finish
|
||||||
|
- VERBATIM
|
||||||
|
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
- )
|
||||||
|
+ add_custom_command(TARGET mock_ut
|
||||||
|
+ POST_BUILD
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
|
||||||
|
+ COMMAND ctest -VV
|
||||||
|
+ COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
|
||||||
|
+ COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo run gcov finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
+else()
|
||||||
|
+ add_custom_command(TARGET mock_ut
|
||||||
|
+ PRE_BUILD
|
||||||
|
+ COMMAND ${CMAKE_CTEST_COMMAND} -VV
|
||||||
|
+ COMMAND ${CMAKE_COMMAND} -E echo UT finish
|
||||||
|
+ VERBATIM
|
||||||
|
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
|
||||||
|
+ )
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
# --------------- testcase add finish -----------------
|
||||||
|
|
||||||
|
diff --git a/tests/json_llt.cpp b/tests/libocispec_ut.cpp
|
||||||
|
similarity index 97%
|
||||||
|
rename from tests/json_llt.cpp
|
||||||
|
rename to tests/libocispec_ut.cpp
|
||||||
|
index 9622ed4..58a1f52 100644
|
||||||
|
--- a/tests/json_llt.cpp
|
||||||
|
+++ b/tests/libocispec_ut.cpp
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
#include "read_file.h"
|
||||||
|
#include "oci_runtime_hooks.h"
|
||||||
|
|
||||||
|
-TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
+TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
oci_runtime_spec_hooks *hooks = nullptr;
|
||||||
|
@@ -79,7 +79,7 @@ TEST(json_testcase, test_oci_runtime_spec_hooks)
|
||||||
|
free(jstr);
|
||||||
|
}
|
||||||
|
|
||||||
|
-TEST(json_testcase, test_json_readfile)
|
||||||
|
+TEST(libocispec_testcase, test_json_readfile)
|
||||||
|
{
|
||||||
|
const char *fname = "./ocihook.json";
|
||||||
|
const char *not_exist = "/tmp/not_exist.json";
|
||||||
|
diff --git a/tests/log_llt.cpp b/tests/log_ut.cpp
|
||||||
|
similarity index 100%
|
||||||
|
rename from tests/log_llt.cpp
|
||||||
|
rename to tests/log_ut.cpp
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
||||||
13
lcr.spec
13
lcr.spec
@ -1,5 +1,5 @@
|
|||||||
%global _version 2.0.2
|
%global _version 2.0.2
|
||||||
%global _release 20200526.193309.gitfdf57813
|
%global _release 20200616.163046.git9a34ea5f
|
||||||
%global _inner_name isula_libutils
|
%global _inner_name isula_libutils
|
||||||
|
|
||||||
Name: lcr
|
Name: lcr
|
||||||
@ -13,11 +13,20 @@ License: LGPLv2.1+
|
|||||||
BuildRoot: %{_tmppath}/lcr-%{version}
|
BuildRoot: %{_tmppath}/lcr-%{version}
|
||||||
|
|
||||||
Patch9000: 0001-fix-wrong-license.patch
|
Patch9000: 0001-fix-wrong-license.patch
|
||||||
|
Patch9001: 0002-support-import-rootfs-to-be-image.patch
|
||||||
|
Patch9002: 0003-support-calico.patch
|
||||||
|
Patch9003: 0004-improve-check-driver-of-log.patch
|
||||||
|
Patch9004: 0005-improve-llt-framework.patch
|
||||||
|
Patch9005: 0006-fix-log-test-error.patch
|
||||||
|
Patch9006: 0007-improve-html-show-result.patch
|
||||||
|
Patch9007: 0008-change-tests-name.patch
|
||||||
|
Patch9008: 0009-Pull-Request-49-change-name-of-testcases.patch
|
||||||
|
Patch9009: 0010-change-tests-name.patch
|
||||||
|
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: lxc
|
BuildRequires: lxc
|
||||||
BuildRequires: lxc-devel
|
BuildRequires: lxc-devel
|
||||||
BuildRequires: zlib-devel yajl-devel gtest-devel
|
BuildRequires: zlib-devel yajl-devel gtest-devel gmock-devel
|
||||||
Requires: lxc yajl zlib
|
Requires: lxc yajl zlib
|
||||||
ExclusiveArch: x86_64 aarch64
|
ExclusiveArch: x86_64 aarch64
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user