Ken Van Hoeylandt 56ddd4b355
Mesh Chat apps, ESP-NOW mesh radio, and shared Wi-Fi radio ownership (#698)
Mesh gets contacts, channels, delivery receipts, QR sharing and an ESP-NOW radio. Mesh Chat is split into Mesh Contacts and Mesh Channels, `mesh inspect` replaces the Mesh Inspect app, and ESP-NOW and Wi-Fi now share the Wi-Fi radio safely.
2026-10-17 18:56:27 +02:00

26 lines
938 B
C++

#include "doctest.h"
#include <lvgl.h>
#include <lvgl/widgets/qr.h>
#include <string>
TEST_CASE("lvgl_qr_set_data accepts data that fits in a QR code and rejects data that doesn't") {
lv_init();
lv_display_create(320, 240);
lv_obj_t* qr = lvgl_qr_create(lv_screen_active());
CHECK_EQ(lvgl_qr_set_data(qr, "hello"), ERROR_NONE);
// Longer data needs a larger version
CHECK_EQ(lvgl_qr_set_data(qr, std::string(17, 'a').c_str()), ERROR_NONE);
CHECK_EQ(lvgl_qr_set_data(qr, std::string(18, 'a').c_str()), ERROR_NONE);
CHECK_EQ(lvgl_qr_set_data(qr, std::string(1273, 'a').c_str()), ERROR_NONE);
CHECK_EQ(lvgl_qr_set_data(qr, std::string(1274, 'a').c_str()), ERROR_OUT_OF_RANGE);
CHECK_EQ(lvgl_qr_set_data(qr, std::string(5000, 'a').c_str()), ERROR_OUT_OF_RANGE);
// A failure keeps the previous code
CHECK_EQ(lvgl_qr_set_data(qr, ""), ERROR_NONE);
lv_obj_delete(qr);
lv_deinit();
}