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
11 static int SetToOneToFailInTearDown;
12 static int SetToOneMeanWeAlreadyCheckedThisGuy;
13
setUp(void)14 void setUp(void)
15 {
16 SetToOneToFailInTearDown = 0;
17 SetToOneMeanWeAlreadyCheckedThisGuy = 0;
18 }
19
tearDown(void)20 void 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
testEqualMemory(void)36 void 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
testNotEqualMemory1(void)48 void testNotEqualMemory1(void)
49 {
50 EXPECT_ABORT_BEGIN
51 TEST_ASSERT_EQUAL_MEMORY("foo", "bar", 3);
52 VERIFY_FAILS_END
53 }
54
testNotEqualMemory2(void)55 void testNotEqualMemory2(void)
56 {
57 EXPECT_ABORT_BEGIN
58 TEST_ASSERT_EQUAL_MEMORY("fool", "food", 4);
59 VERIFY_FAILS_END
60 }
61
testNotEqualMemory3(void)62 void testNotEqualMemory3(void)
63 {
64 EXPECT_ABORT_BEGIN
65 TEST_ASSERT_EQUAL_MEMORY(NULL, "food", 4);
66 VERIFY_FAILS_END
67 }
68
testNotEqualMemory4(void)69 void testNotEqualMemory4(void)
70 {
71 EXPECT_ABORT_BEGIN
72 TEST_ASSERT_EQUAL_MEMORY("fool", NULL, 4);
73 VERIFY_FAILS_END
74 }
75
testNotEqualMemoryLengthZero(void)76 void testNotEqualMemoryLengthZero(void)
77 {
78 EXPECT_ABORT_BEGIN
79 TEST_ASSERT_EQUAL_MEMORY(NULL, NULL, 0);
80 VERIFY_FAILS_END
81 }
82