summaryrefslogtreecommitdiff
path: root/test/bmMenuNew.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/bmMenuNew.c')
-rw-r--r--test/bmMenuNew.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/test/bmMenuNew.c b/test/bmMenuNew.c
index ebab314..bccfbc8 100644
--- a/test/bmMenuNew.c
+++ b/test/bmMenuNew.c
@@ -1,25 +1,31 @@
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
+#include <string.h>
#include <assert.h>
#include <bemenu.h>
-int main(int argc, char **argv)
+int
+main(int argc, char **argv)
{
(void)argc, (void)argv;
+ if (!bm_init())
+ return EXIT_FAILURE;
+
// TEST: Instance bmMenu with all possible draw modes.
{
- bmDrawMode i;
- for (i = 0; i < BM_DRAW_MODE_LAST; ++i) {
- if (i == BM_DRAW_MODE_CURSES && !isatty(STDIN_FILENO)) {
+ uint32_t count;
+ const struct bm_renderer **renderers = bm_get_renderers(&count);
+ for (int32_t i = 0; i < count; ++i) {
+ if (!strcmp(bm_renderer_get_name(renderers[i]), "curses") && !isatty(STDIN_FILENO)) {
printf("Skipping test for mode BM_DRAW_MODE_CURSES, as not running on terminal.\n");
continue;
}
- bmMenu *menu = bmMenuNew(i);
+ struct bm_menu *menu = bm_menu_new(bm_renderer_get_name(renderers[i]));
assert(menu);
- bmMenuRender(menu);
- bmMenuFree(menu);
+ bm_menu_render(menu);
+ bm_menu_free(menu);
}
}