5.2 Integration Test Example
/* tests/test_integration.c */
#include "d3tui.h"
#include "d3tui_test.h"
void test_terminal_render(void) {
d3tui_terminal_t *term = d3tui_term_create(NULL);
d3tui_render_ctx_t *ctx = d3tui_render_create(640, 480);
d3tui_term_set_render_context(term, ctx);
// Input some text
d3tui_term_puts(term, "Hello, World!");
// Render
d3tui_term_render(term);
// Verify rendering (this would need actual verification logic)
// For now, just check it doesn't crash
d3tui_assert_true(true, "Rendering completed");
d3tui_render_destroy(ctx);
d3tui_term_destroy(term);
}
void test_font_loading(void) {
d3tui_font_t *font = d3tui_font_load("fonts/default.d3f");
d3tui_assert_not_null(font, "Font loading failed");
uint16_t cell_w, cell_h, line_h;
d3tui_font_get_metrics(font, &cell_w, &cell_h, &line_h);
d3tui_assert_true(cell_w > 0, "Invalid cell width");
d3tui_assert_true(cell_h > 0, "Invalid cell height");
d3tui_font_free(font);
}