#ifdef TEST #include "unity.h" #include "addition.h" int carry[1]; void setUp(void) { } void tearDown(void) { } void test_addition_full_adder_nullplusnullgleichnull(void) { int result[1]; int expected = 0; full_adder(result, carry, 0, 0, 0); TEST_ASSERT_EQUAL_INT(expected, result[0]); } void test_addition_full_adder_nullplusnullgleichnullmituebertrag(void) { int result[1]; int expected = 1; full_adder(result, carry, 0, 0, 1); TEST_ASSERT_EQUAL_INT(expected, result[0]); } void test_addition_full_adder_zahlpluszahlgleichsummeohneuebertrag(void) { int result[5]; int expected[5] = { 0, 1, 1, 1, 1}; full_adder((result+0), carry, 1, 0, 1); full_adder((result+1), carry, 0, 1, 0); full_adder((result+2), carry, 1, 0, 0); full_adder((result+3), carry, 0, 0, 1); full_adder((result+4), carry, 1, 1, 1); TEST_ASSERT_EQUAL_INT(expected[0], result[0]); TEST_ASSERT_EQUAL_INT(expected[1], result[1]); TEST_ASSERT_EQUAL_INT(expected[2], result[2]); TEST_ASSERT_EQUAL_INT(expected[3], result[3]); TEST_ASSERT_EQUAL_INT(expected[4], result[4]); } #endif // TEST