1/* ========================================== 2 Unity Project - A Test Framework for C 3 Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams 4 [Released under MIT License. Please refer to license.txt for details] 5========================================== */ 6 7#include "unity.h" 8#define TEST_INSTANCES 9#include "self_assessment_utils.h" 10 11static int SetToOneToFailInTearDown; 12static int SetToOneMeanWeAlreadyCheckedThisGuy; 13 14void setUp(void) 15{ 16 SetToOneToFailInTearDown = 0; 17 SetToOneMeanWeAlreadyCheckedThisGuy = 0; 18} 19 20void tearDown(void) 21{ 22 endPutcharSpy(); /* Stop suppressing test output */ 23 if (SetToOneToFailInTearDown == 1) 24 { 25 /* These will be skipped internally if already failed/ignored */ 26 TEST_FAIL_MESSAGE("<= Failed in tearDown"); 27 TEST_IGNORE_MESSAGE("<= Ignored in tearDown"); 28 } 29 if ((SetToOneMeanWeAlreadyCheckedThisGuy == 0) && (Unity.CurrentTestFailed > 0)) 30 { 31 UnityPrint(": [[[[ Test Should Have Passed But Did Not ]]]]"); 32 UNITY_OUTPUT_CHAR('\n'); 33 } 34} 35 36void testEqualMemory(void) 37{ 38 const char *testString = "whatever"; 39 40 TEST_ASSERT_EQUAL_MEMORY(testString, testString, 8); 41 TEST_ASSERT_EQUAL_MEMORY("whatever", "whatever", 8); 42 TEST_ASSERT_EQUAL_MEMORY("whatever", testString, 8); 43 TEST_ASSERT_EQUAL_MEMORY(testString, "whatever", 8); 44 TEST_ASSERT_EQUAL_MEMORY(testString, "whatever", 2); 45 TEST_ASSERT_EQUAL_MEMORY(NULL, NULL, 1); 46} 47 48void testNotEqualMemory1(void) 49{ 50 EXPECT_ABORT_BEGIN 51 TEST_ASSERT_EQUAL_MEMORY("foo", "bar", 3); 52 VERIFY_FAILS_END 53} 54 55void testNotEqualMemory2(void) 56{ 57 EXPECT_ABORT_BEGIN 58 TEST_ASSERT_EQUAL_MEMORY("fool", "food", 4); 59 VERIFY_FAILS_END 60} 61 62void testNotEqualMemory3(void) 63{ 64 EXPECT_ABORT_BEGIN 65 TEST_ASSERT_EQUAL_MEMORY(NULL, "food", 4); 66 VERIFY_FAILS_END 67} 68 69void testNotEqualMemory4(void) 70{ 71 EXPECT_ABORT_BEGIN 72 TEST_ASSERT_EQUAL_MEMORY("fool", NULL, 4); 73 VERIFY_FAILS_END 74} 75 76void testNotEqualMemoryLengthZero(void) 77{ 78 EXPECT_ABORT_BEGIN 79 TEST_ASSERT_EQUAL_MEMORY(NULL, NULL, 0); 80 VERIFY_FAILS_END 81} 82