Files
imp/tests/print_tests.c

71 lines
1.4 KiB
C

#include "print.h"
#include "unity.h"
#include <string.h>
#define BUFFER_SIZE 256U
static am_t am;
static char buffer[BUFFER_SIZE];
void setUp(void)
{
memset(buffer, 0, BUFFER_SIZE);
am_init(&am);
}
void tearDown(void)
{
}
static void test_integer_5(void)
{
am.regs[VAL] = expr_integer(&am, 5);
const size_t len = print(&am, buffer, BUFFER_SIZE);
TEST_ASSERT_EQUAL(1, len);
TEST_ASSERT_EQUAL_MEMORY("5", buffer, 1);
}
static void test_integer_1234(void)
{
am.regs[VAL] = expr_integer(&am, 1234);
const size_t len = print(&am, buffer, BUFFER_SIZE);
TEST_ASSERT_EQUAL(4, len);
TEST_ASSERT_EQUAL_MEMORY("1234", buffer, 4);
}
static void test_integer_0(void)
{
am.regs[VAL] = expr_integer(&am, 0);
const size_t len = print(&am, buffer, BUFFER_SIZE);
TEST_ASSERT_EQUAL(1, len);
TEST_ASSERT_EQUAL_MEMORY("0", buffer, 1);
}
static void test_integer_10(void)
{
am.regs[VAL] = expr_integer(&am, 10);
const size_t len = print(&am, buffer, BUFFER_SIZE);
TEST_ASSERT_EQUAL(2, len);
TEST_ASSERT_EQUAL_MEMORY("10", buffer, 2);
}
static void test_integer_minus_4321(void)
{
am.regs[VAL] = expr_integer(&am, -4321);
const size_t len = print(&am, buffer, BUFFER_SIZE);
TEST_ASSERT_EQUAL(5, len);
TEST_ASSERT_EQUAL_MEMORY("-4321", buffer, 5);
}
int main(void)
{
UNITY_BEGIN();
RUN_TEST(test_integer_5);
RUN_TEST(test_integer_1234);
RUN_TEST(test_integer_0);
RUN_TEST(test_integer_10);
RUN_TEST(test_integer_minus_4321);
return UNITY_END();
}