changeset 22803:766e2da35883

lib: test-time-util: Put all test data for timeval_cmp() test in a single struct array.
author Stephan Bosch <stephan.bosch@dovecot.fi>
date Tue, 06 Feb 2018 16:51:23 +0100
parents b034cb09fbb6
children 33a2b955ea19
files src/lib/test-time-util.c
diffstat 1 files changed, 39 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/test-time-util.c	Mon Feb 05 13:38:16 2018 +0200
+++ b/src/lib/test-time-util.c	Tue Feb 06 16:51:23 2018 +0100
@@ -7,30 +7,49 @@
 
 static void test_timeval_cmp(void)
 {
-	static struct timeval input[] = {
-		{ 0, 0 }, { 0, 0 },
-		{ INT_MAX, 999999 }, { INT_MAX, 999999 },
-		{ 0, 0 }, { 0, 1 },
-		{ 0, 0 }, { 1, 0 },
-		{ 0, 999999 }, { 1, 0 },
-		{ 1, 0 }, { 1, 1 },
-		{ -INT_MAX, 0 }, { INT_MAX, 0 }
-	};
-	static int output[] = {
-		0,
-		0,
-		-1,
-		-1,
-		-1,
-		-1,
-		-1
+	static const struct {
+		struct timeval tv1, tv2;
+		int output;
+	} tests[] = {
+		{
+			.tv1 = { 0, 0 },
+			.tv2 = { 0, 0 },
+			.output = 0,
+		}, {
+			.tv1 = { INT_MAX, 999999 },
+			.tv2 = { INT_MAX, 999999 },
+			.output = 0,
+		}, {
+			.tv1 = { 0, 0 },
+			.tv2 = { 0, 1 },
+			.output = -1,
+		}, {
+			.tv1 = { 0, 0 },
+			.tv2 = { 1, 0 },
+			.output = -1,
+		}, {
+			.tv1 = { 0, 999999 },
+			.tv2 = { 1, 0 },
+			.output = -1,
+		}, {
+			.tv1 = { 1, 0 },
+			.tv2 = { 1, 1 },
+			.output = -1,
+		}, {
+			.tv1 = { -INT_MAX, 0 },
+			.tv2 = { INT_MAX, 0 },
+			.output = -1,
+		}
 	};
 	unsigned int i;
 
 	test_begin("timeval_cmp()");
-	for (i = 0; i < N_ELEMENTS(input); i += 2) {
-		test_assert(timeval_cmp(&input[i], &input[i+1]) == output[i/2]);
-		test_assert(timeval_cmp(&input[i+1], &input[i]) == -output[i/2]);
+	for (i = 0; i < N_ELEMENTS(tests); i++) {
+		const struct timeval *tv1 = &tests[i].tv1, *tv2 = &tests[i].tv2;
+		int output = tests[i].output;
+
+		test_assert(timeval_cmp(tv1, tv2) == output);
+		test_assert(timeval_cmp(tv2, tv1) == -output);
 	}
 	test_end();
 }