From 443351e95ac0761438fe1658942b014a82dcfed4 Mon Sep 17 00:00:00 2001 From: "Sergio R. Caprile" Date: Wed, 7 Sep 2022 14:31:08 -0300 Subject: [PATCH] Make mip_test fail with current queue algo --- test/mip_test.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/mip_test.c b/test/mip_test.c index 2de65eb3..3bb05940 100644 --- a/test/mip_test.c +++ b/test/mip_test.c @@ -2,15 +2,17 @@ #include "mongoose.c" static void test_queue(void) { - uint8_t buf[sizeof(size_t) + 5]; + static uint8_t buf[sizeof(size_t) + sizeof(uint16_t) + 3 ]; // fit 1 element but not 2 uint16_t val = 1234; - struct queue q = {buf, sizeof(buf), 0, 0}; + static struct queue q = {buf, sizeof(buf), 0, 0}; // Write to an empty queue, and read back assert(q_avail(&q) == 0); assert(q_write(&q, &val, sizeof(val)) == true); assert(q_avail(&q) == sizeof(val)); assert(q.head > q.tail); + // Only one element may fit + assert(q_write(&q, &val, sizeof(val)) == false); val = 0; assert(q_read(&q, &val) == sizeof(val)); assert(val == 1234); @@ -20,6 +22,8 @@ static void test_queue(void) { assert(q_write(&q, &val, sizeof(val)) == true); assert(q_avail(&q) == sizeof(val)); assert(q.head < q.tail); + // Only one element may fit + assert(q_write(&q, &val, sizeof(val)) == false); val = 0; assert(q_read(&q, &val) == sizeof(val)); assert(val == 1234);