Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/zabbix/zabbix.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'tests/libs/zbxcommon/zbx_tm_sub.c')
-rw-r--r--tests/libs/zbxcommon/zbx_tm_sub.c26
1 files changed, 17 insertions, 9 deletions
diff --git a/tests/libs/zbxcommon/zbx_tm_sub.c b/tests/libs/zbxcommon/zbx_tm_sub.c
index f2c67b86f74..9b2bf5aa2f6 100644
--- a/tests/libs/zbxcommon/zbx_tm_sub.c
+++ b/tests/libs/zbxcommon/zbx_tm_sub.c
@@ -26,13 +26,26 @@
#include "zbxtrends.h"
#include "log.h"
+static void parse_period(const char *period, int *multiplier, zbx_time_unit_t *base)
+{
+ const char *unit;
+
+ *multiplier = atoi(period);
+ unit = period + strlen(period) - 1;
+
+ if ('i' == *unit)
+ {
+ *base = ZBX_TIME_UNIT_ISOYEAR;
+ }
+ else if (ZBX_TIME_UNIT_UNKNOWN == (*base = zbx_tm_str_to_unit(unit)))
+ fail_msg("invalid time period '%s'", period);
+
+}
+
void zbx_mock_test_entry(void **state)
{
- const char *param;
- char *error = NULL;
zbx_timespec_t ts_in, ts_out, ts;
struct tm tm;
- size_t len;
int multiplier;
zbx_time_unit_t base;
time_t time_tmp;
@@ -50,12 +63,7 @@ void zbx_mock_test_entry(void **state)
if (ZBX_MOCK_SUCCESS != zbx_strtime_to_timespec(zbx_mock_get_parameter_string("out.time"), &ts_out))
fail_msg("Invalid output time format");
- param = zbx_mock_get_parameter_string("in.param");
- if (SUCCEED != zbx_tm_parse_period(param, &len, &multiplier, &base, &error))
- {
- fail_msg("Invalid time period: %s", error);
- zbx_free(error);
- }
+ parse_period(zbx_mock_get_parameter_string("in.param"), &multiplier, &base);
time_tmp = ts_in.sec;
tm = *localtime(&time_tmp);