==> tests/basics.c <==1/* The splits mesh-top relies on most: lengths and fills, percentages, overflow. */
2#include "mesh/check.h"
3#include "tui/layout.h"
4
5int main(void) {
6 tui_rect out[3];
7 tui_vsplit((tui_rect){0, 0, 100, 30}, 3, (tui_constraint[]){TUI_LENGTH(1), TUI_FILL(1), TUI_LENGTH(1)}, out);
8 CHECK(tui_rect_eq(out[0], (tui_rect){0, 0, 100, 1}));
9 CHECK(tui_rect_eq(out[1], (tui_rect){0, 1, 100, 28}));
10 CHECK(tui_rect_eq(out[2], (tui_rect){0, 29, 100, 1}));
11 tui_hsplit((tui_rect){0, 0, 100, 1}, 2, (tui_constraint[]){TUI_PERCENTAGE(45), TUI_FILL(1)}, out);
12 CHECK_U(out[0].width, 45);
13 CHECK_U(out[1].width, 55);
14 tui_hsplit((tui_rect){0, 0, 99, 1}, 2, (tui_constraint[]){TUI_FILL(1), TUI_FILL(1)}, out);
15 CHECK_U(out[0].width + out[1].width, 99);
16 tui_layout_cache_clear();
17 return mesh_check_done();
18}