From 5dd45b06526a6cbedef0fa25c00a808797a5e89e Mon Sep 17 00:00:00 2001 From: Pascal Terjan Date: Fri, 14 Aug 2026 15:47:49 +0000 Subject: [PATCH] Add a test for caca_flip --- caca/t/canvas.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/caca/t/canvas.cpp b/caca/t/canvas.cpp index 3fd3424..0c5651b 100644 --- a/caca/t/canvas.cpp +++ b/caca/t/canvas.cpp @@ -27,6 +27,7 @@ class CanvasTest : public CppUnit::TestCase CPPUNIT_TEST(test_resize); CPPUNIT_TEST(test_chars); CPPUNIT_TEST(test_utf8); + CPPUNIT_TEST(test_flip); CPPUNIT_TEST_SUITE_END(); public: @@ -116,6 +117,33 @@ public: /* Send only one byte of a 4-byte sequence */ caca_put_str(cv, 0, 0, "\xf0"); } + + void test_flip() + { + caca_canvas_t *cv; + + cv = caca_create_canvas(3, 2); + + caca_put_char(cv, 0, 0, 'A'); + caca_put_char(cv, 1, 0, 'H'); + caca_put_char(cv, 2, 0, 'M'); + + caca_put_char(cv, 0, 1, '('); + caca_put_char(cv, 1, 1, ' '); + caca_put_char(cv, 2, 1, ' '); + + caca_flip(cv); + + CPPUNIT_ASSERT_EQUAL((uint32_t)'M', caca_get_char(cv, 0, 0)); + CPPUNIT_ASSERT_EQUAL((uint32_t)'H', caca_get_char(cv, 1, 0)); + CPPUNIT_ASSERT_EQUAL((uint32_t)'A', caca_get_char(cv, 2, 0)); + + CPPUNIT_ASSERT_EQUAL((uint32_t)' ', caca_get_char(cv, 0, 1)); + CPPUNIT_ASSERT_EQUAL((uint32_t)' ', caca_get_char(cv, 1, 1)); + CPPUNIT_ASSERT_EQUAL((uint32_t)')', caca_get_char(cv, 2, 1)); + + caca_free_canvas(cv); + } }; CPPUNIT_TEST_SUITE_REGISTRATION(CanvasTest);