diff --git a/include/asterisk/test.h b/include/asterisk/test.h index f97df80d75d3ee4242c96133a3f3f9e28ffc76fe..57e05b47199efdc616e1ed48b031132b5b87cd80 100644 --- a/include/asterisk/test.h +++ b/include/asterisk/test.h @@ -154,7 +154,12 @@ struct ast_test; struct ast_test_info { /*! \brief name of test, unique to category */ const char *name; - /*! \brief test category */ + /*! + * \brief test category + * + * Tests are categorized in a directory tree style hierarchy. It is expected that + * this string have both a leading and trailing forward slash ('/'). + */ const char *category; /*! \brief optional short summary of test */ const char *summary; diff --git a/main/test.c b/main/test.c index 3427bf205ddb778379b37ffc680eec70ccfe1b93..f35dbdb21ae66dfe46b31cad10a19cc3c7133759 100644 --- a/main/test.c +++ b/main/test.c @@ -547,6 +547,11 @@ static struct ast_test *test_alloc(ast_test_cb_t *cb) return test_free(test); } + if (test->info.category[0] != '/' || test->info.category[strlen(test->info.category) - 1] != '/') { + ast_log(LOG_WARNING, "Test category is missing a leading or trailing backslash for test %s%s", + test->info.category, test->info.name); + } + if (ast_strlen_zero(test->info.summary)) { ast_log(LOG_WARNING, "Test %s/%s has no summary, test registration refused.\n", test->info.category, test->info.name);