From 01b185f9795340e28b53f46a4bd8af7de6299c47 Mon Sep 17 00:00:00 2001 From: Iztok Jeras <iztok.jeras@redpitaya.com> Date: ćšć, 08 10æ 2015 03:00:34 +0800 Subject: [PATCH] integer parser: fix array length for double variables --- libscpi/test/test_scpi_utils.c | 27 ++++++++++++++++----------- 1 files changed, 16 insertions(+), 11 deletions(-) diff --git a/libscpi/test/test_scpi_utils.c b/libscpi/test/test_scpi_utils.c index 1f1853a..f3302c3 100644 --- a/libscpi/test/test_scpi_utils.c +++ b/libscpi/test/test_scpi_utils.c @@ -73,12 +73,13 @@ const size_t max=32+1; int32_t val[] = {0, 1, -1, INT32_MIN, INT32_MAX, 0x01234567, 0x89abcdef}; int N = sizeof(val) / sizeof(int32_t); + int i; char str[max]; char ref[max]; size_t len; // test signed conversion to decimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_Int32ToStr(val[i], str, max); snprintf(ref, max, "%"PRIi32, val[i]); CU_ASSERT(len == strlen(ref)); @@ -90,12 +91,13 @@ const size_t max=32+1; uint32_t val[] = {0, 1, -1, INT32_MIN, INT32_MAX, 0x01234567, 0x89abcdef}; int N = sizeof(val) / sizeof(uint32_t); + int i; char str[max]; char ref[max]; size_t len; // test conversion to decimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt32ToStrBase(val[i], str, max, 10); snprintf(ref, max, "%"PRIu32, val[i]); CU_ASSERT(len == strlen(ref)); @@ -103,7 +105,7 @@ } // test conversion to hexadecimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt32ToStrBase(val[i], str, max, 16); snprintf(ref, max, "%"PRIX32, val[i]); CU_ASSERT(len == strlen(ref)); @@ -111,7 +113,7 @@ } // test conversion to octal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt32ToStrBase(val[i], str, max, 8); snprintf(ref, max, "%"PRIo32, val[i]); CU_ASSERT(len == strlen(ref)); @@ -144,12 +146,13 @@ const size_t max=64+1; int64_t val[] = {0, 1, -1, INT64_MIN, INT64_MAX, 0x0123456789abcdef, 0xfedcba9876543210}; int N = sizeof(val) / sizeof(int64_t); + int i; char str[max]; char ref[max]; size_t len; // test conversion to decimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_Int64ToStr(val[i], str, max); snprintf(ref, max, "%"PRIi64, val[i]); CU_ASSERT(len == strlen(ref)); @@ -161,12 +164,13 @@ const size_t max=64+1; uint64_t val[] = {0, 1, -1, INT64_MIN, INT64_MAX, 0x0123456789abcdef, 0xfedcba9876543210}; int N = sizeof(val) / sizeof(uint64_t); + int i; char str[max]; char ref[max]; size_t len; // test conversion to decimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt64ToStrBase(val[i], str, max, 10); snprintf(ref, max, "%"PRIu64, val[i]); CU_ASSERT(len == strlen(ref)); @@ -174,7 +178,7 @@ } // test conversion to hexadecimal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt64ToStrBase(val[i], str, max, 16); snprintf(ref, max, "%"PRIX64, val[i]); CU_ASSERT(len == strlen(ref)); @@ -182,7 +186,7 @@ } // test conversion to octal numbers - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_UInt64ToStrBase(val[i], str, max, 8); snprintf(ref, max, "%"PRIo64, val[i]); CU_ASSERT(len == strlen(ref)); @@ -214,14 +218,15 @@ static void test_doubleToStr() { const size_t max=49+1; double val[] = {1, -1, 1.1, -1.1, 1e3, 1e30, -1.3e30, -1.3e-30}; - int N = sizeof(val) / sizeof(int); + int N = sizeof(val) / sizeof(double); + int i; char str[max]; char ref[max]; size_t len; - for (uintptr_t i=0; i<N; i++) { + for (i=0; i<N; i++) { len = SCPI_DoubleToStr(val[i], str, max); - snprintf(ref, max, "%g", val[i]); + snprintf(ref, max, "%lg", val[i]); CU_ASSERT(len == strlen(ref)); CU_ASSERT_STRING_EQUAL(str, ref); } -- Gitblit v1.9.1