From f13de868be052f96325c337f25453f1d97777005 Mon Sep 17 00:00:00 2001 From: Jacob Erlbeck Date: Tue, 10 Nov 2015 11:36:58 +0100 Subject: stats/test: Add memory leak check Adds a rudimentary leak check for the counters and stat items. Sponsored-by: On-Waves ehf --- tests/stats/stats_test.c | 13 +++++++++---- 1 file 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__); } -- cgit v1.2.3