summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2015-11-10 11:36:58 +0100
committerJacob Erlbeck <jerlbeck@sysmocom.de>2015-11-26 12:52:24 +0100
commitf13de868be052f96325c337f25453f1d97777005 (patch)
tree6931b22fbe1683a9028591bd96a4821ded0aa644 /tests
parent46b703d083a57d7718340f8f71da29d96ce15170 (diff)
stats/test: Add memory leak check
Adds a rudimentary leak check for the counters and stat items. Sponsored-by: On-Waves ehf
Diffstat (limited to 'tests')
-rw-r--r--tests/stats/stats_test.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/tests/stats/stats_test.c b/tests/stats/stats_test.c
index f6efd3e2..75ddf181 100644
--- a/tests/stats/stats_test.c
+++ b/tests/stats/stats_test.c
@@ -296,19 +296,20 @@ static void test_reporting()
struct osmo_stats_reporter *srep1, *srep2, *srep;
struct osmo_stat_item_group *statg1, *statg2;
struct rate_ctr_group *ctrg1, *ctrg2;
+ void *stats_ctx = talloc_named_const(NULL, 1, "stats test context");
int rc;
printf("Start test: %s\n", __func__);
/* Allocate counters and items */
- statg1 = osmo_stat_item_group_alloc(NULL, &statg_desc, 1);
+ statg1 = osmo_stat_item_group_alloc(stats_ctx, &statg_desc, 1);
OSMO_ASSERT(statg1 != NULL);
- statg2 = osmo_stat_item_group_alloc(NULL, &statg_desc, 2);
+ statg2 = osmo_stat_item_group_alloc(stats_ctx, &statg_desc, 2);
OSMO_ASSERT(statg2 != NULL);
- ctrg1 = rate_ctr_group_alloc(NULL, &ctrg_desc, 1);
+ ctrg1 = rate_ctr_group_alloc(stats_ctx, &ctrg_desc, 1);
OSMO_ASSERT(ctrg1 != NULL);
- ctrg2 = rate_ctr_group_alloc(NULL, &ctrg_desc, 2);
+ ctrg2 = rate_ctr_group_alloc(stats_ctx, &ctrg_desc, 2);
OSMO_ASSERT(ctrg2 != NULL);
srep1 = stats_reporter_create_test("test1");
@@ -441,6 +442,10 @@ static void test_reporting()
osmo_stats_report();
OSMO_ASSERT(send_count == 0);
+ /* Leak check */
+ OSMO_ASSERT(talloc_total_blocks(stats_ctx) == 1);
+ talloc_free(stats_ctx);
+
printf("End test: %s\n", __func__);
}