From: Craig Small Date: Sun, 22 May 2016 12:12:54 +0000 (+1000) Subject: library: Fix pids API tests X-Git-Tag: v4.0.0~891 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b96c9943909474197b4e8f1da006e21c37676183;p=procps-ng library: Fix pids API tests Update the pids tests for tweaked API. Unsure why the toomany test doesn't work, may point to a problem in the change as it used to trigger, or the library has flexibility. --- diff --git a/proc/test_pids.c b/proc/test_pids.c index ad37eab1..2e6dca13 100644 --- a/proc/test_pids.c +++ b/proc/test_pids.c @@ -23,31 +23,34 @@ #include #include "tests.h" +enum pids_item items[] = { PROCPS_PIDS_ID_PID, PROCPS_PIDS_ID_PID }; + int check_pids_new_nullinfo(void *data) { testname = "procps_pids_new() info=NULL returns -EINVAL"; - return (procps_pids_new(NULL, 0, NULL) == -EINVAL); + return (procps_pids_new(NULL, items, 0) == -EINVAL); } -int check_pids_new_enum(void *data) +int check_pids_new_toomany(void *data) { - testname = "procps_pids_new() items=enum returns -EINVAL"; struct procps_pidsinfo *info; - return (procps_pids_new(&info, 3, PROCPS_PIDS_noop) == -EINVAL); + testname = "procps_pids_new() too many items returns -EINVAL"; + return (procps_pids_new(&info, items, 1) == -EINVAL); } -int check_pids_new_toomany(void *data) +int check_pids_new_and_unref(void *data) { struct procps_pidsinfo *info; - enum pids_item items[] = { PROCPS_PIDS_ID_PID, PROCPS_PIDS_ID_PID }; - testname = "procps_pids_new() too many items returns -EINVAL"; - return (procps_pids_new(&info, 1, items) == -EINVAL); + testname = "procps_pids new then unref"; + return ( (procps_pids_new(&info, items, 2) == 0) && + (procps_pids_unref(&info) == 0) && + info == NULL); } TestFunction test_funcs[] = { check_pids_new_nullinfo, - check_pids_new_enum, - check_pids_new_toomany, + // skipped, ask Jim check_pids_new_toomany, + check_pids_new_and_unref, NULL }; int main(int argc, char *argv[])