Updating dummy test suite.
authorMarkus Kauppila <markus.kauppila@gmail.com>
Sun, 14 Aug 2011 21:05:08 +0300
changeset 5830 e1a6cc820772
parent 5829 12920d41301d
child 5831 d0f31485bd81
Updating dummy test suite.
test/test-automation/src/runner/runner.c
test/test-automation/tests/testdummy/testdummy.c
--- a/test/test-automation/src/runner/runner.c	Sun Aug 14 14:38:19 2011 +0300
+++ b/test/test-automation/src/runner/runner.c	Sun Aug 14 21:05:08 2011 +0300
@@ -1066,7 +1066,7 @@
 	  printf("                [--logfile BASENAME] [--logdir DIR] [--log-stdout] [--xml]\n");
 	  printf("                [--xsl [STYLESHEET]] [--seed VALUE] [--iterations VALUE]\n");
 	  printf("                [--exec-key KEY] [--timeout VALUE] [--test TEST]\n");
-	  printf("                [--name-contains SUBSTR] [--suite SUITE]\n");
+	  printf("                [--name-contains SUBSTR] [--suite SUITE] [--include-dummy]\n");
 	  printf("                [--version] [--help]\n");
 	  printf("Options:\n");
 	  printf("     --in-proc                Executes tests in-process\n");
--- a/test/test-automation/tests/testdummy/testdummy.c	Sun Aug 14 14:38:19 2011 +0300
+++ b/test/test-automation/tests/testdummy/testdummy.c	Sun Aug 14 21:05:08 2011 +0300
@@ -41,11 +41,14 @@
 		(TestCaseReference){ "dummycase2", "description", TEST_ENABLED, 0, 0};
 
 static const TestCaseReference test3 =
-		(TestCaseReference){ "dummycase3", "description", TEST_ENABLED, 0, 2};
+		(TestCaseReference){ "testfuzzy_case3", "description", TEST_ENABLED, 0, 2};
+
+static const TestCaseReference test4 =
+		(TestCaseReference){ "testfuzzy_case4", "description", TEST_ENABLED, 0, 2};
 
 /* Test suite */
 extern const TestCaseReference *testSuite[] =  {
-	&test1, &test2, &test3, NULL
+	&test1, &test2, &test3, &test4, NULL
 };
 
 
@@ -139,8 +142,25 @@
 }
 
 void
-dummycase3(void *arg)
+testfuzzy_case3(void *arg)
 {
+	// Simulates a fuzzing failure
 	AssertTrue(RandomUint8() != 100, "Value is 100");
 }
 
+static void
+f(void) {
+     int* x = malloc(10 * sizeof(int));
+     x[10] = 0;        // problem 1: heap block overrun
+}                    // problem 2: memory leak -- x not freed
+
+
+void
+testfuzzy_case4(void *arg)
+{
+	// Creates a memory leak
+	f();
+
+	AssertPass("");
+}
+