From 21831f45d16d0e95102f0a9ffea2dfbafc9da6ce Mon Sep 17 00:00:00 2001 From: =?utf8?q?Petr=20=C5=A0tetiar?= Date: Mon, 12 Oct 2020 13:30:18 +0200 Subject: [PATCH] Disable session ACLs during unit testing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Otherwise we would need to setup ubus infrastructure etc. Signed-off-by: Petr Å tetiar --- CMakeLists.txt | 1 + main.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b60d08e..ae37f1f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,6 +25,7 @@ ADD_EXECUTABLE(cgi-io main.c) TARGET_LINK_LIBRARIES(cgi-io cgi-lib ${ubox} ${ubus}) IF(UNIT_TESTING) + ADD_DEFINITIONS(-DUNIT_TESTING) ENABLE_TESTING() ADD_SUBDIRECTORY(tests) ENDIF() diff --git a/main.c b/main.c index ff9bb63..95a62b8 100644 --- a/main.c +++ b/main.c @@ -72,6 +72,10 @@ struct state int tempfd; }; +static struct state st; + +#ifndef UNIT_TESTING + enum { SES_ACCESS, __SES_MAX, @@ -81,9 +85,6 @@ static const struct blobmsg_policy ses_policy[__SES_MAX] = { [SES_ACCESS] = { .name = "access", .type = BLOBMSG_TYPE_BOOL }, }; - -static struct state st; - static void session_access_cb(struct ubus_request *req, int type, struct blob_attr *msg) { @@ -98,10 +99,14 @@ session_access_cb(struct ubus_request *req, int type, struct blob_attr *msg) if (tb[SES_ACCESS]) *allow = blobmsg_get_bool(tb[SES_ACCESS]); } +#endif static bool session_access(const char *sid, const char *scope, const char *obj, const char *func) { +#ifdef UNIT_TESTING + return true; +#else uint32_t id; bool allow = false; struct ubus_context *ctx; @@ -125,6 +130,7 @@ out: ubus_free(ctx); return allow; +#endif } static char * -- 2.30.2