From 323ec66d62f19673e66762fe25585746d3b2a5e0 Mon Sep 17 00:00:00 2001 From: Jan Breuer <jan.breuer@jaybee.cz> Date: 周三, 18 3月 2015 17:09:30 +0800 Subject: [PATCH] Add new AUTO special value, resolve #20 --- libscpi/test/test_scpi_utils.c | 45 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 40 insertions(+), 5 deletions(-) diff --git a/libscpi/test/test_scpi_utils.c b/libscpi/test/test_scpi_utils.c index 43f3339..5817f61 100644 --- a/libscpi/test/test_scpi_utils.c +++ b/libscpi/test/test_scpi_utils.c @@ -39,7 +39,7 @@ #include "CUnit/Basic.h" #include "scpi/scpi.h" -#include "../src/utils.h" +#include "scpi/utils_private.h" /* * CUnit Test Suite @@ -165,6 +165,24 @@ CU_ASSERT_FALSE(compareStr("ABCD", 4, "abcd", 3)); } +void test_compareStrAndNum() { + + CU_ASSERT_TRUE(compareStrAndNum("abcd", 1, "afgh", 1)); + CU_ASSERT_TRUE(compareStrAndNum("ABCD", 4, "abcd", 4)); + CU_ASSERT_TRUE(compareStrAndNum("AbCd", 3, "AbCE", 3)); + CU_ASSERT_TRUE(compareStrAndNum("ABCD", 1, "a", 1)); + + CU_ASSERT_FALSE(compareStrAndNum("abcd", 1, "efgh", 1)); + CU_ASSERT_FALSE(compareStrAndNum("ABCD", 4, "abcd", 3)); + + CU_ASSERT_TRUE(compareStrAndNum("abcd", 4, "abcd1", 5)); + CU_ASSERT_TRUE(compareStrAndNum("abcd", 4, "abcd123", 7)); + CU_ASSERT_FALSE(compareStrAndNum("abcd", 4, "abcd12A", 7)); + CU_ASSERT_FALSE(compareStrAndNum("abcd", 4, "abcdB12", 7)); + CU_ASSERT_FALSE(compareStrAndNum("abdd", 4, "abcd132", 7)); + +} + void test_locateText() { const char * v; @@ -264,7 +282,7 @@ } void test_matchPattern() { - bool_t result; + scpi_bool_t result; #define TEST_MATCH_PATTERN(p, s, r) \ do { \ @@ -280,7 +298,7 @@ } void test_matchCommand() { - bool_t result; + scpi_bool_t result; #define TEST_MATCH_COMMAND(p, s, r) \ do { \ @@ -387,6 +405,22 @@ TEST_MATCH_COMMAND("*IDN?", ":idn?", FALSE); // common command TEST_MATCH_COMMAND("*IDN?", ":*idn", FALSE); // common command TEST_MATCH_COMMAND("*IDN?", ":*idn?", FALSE); // common command + + TEST_MATCH_COMMAND("ABCdef#", "abc", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("ABCdef#", "abc1324", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("ABCdef#", "abcDef1324", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("ABCdef#", "abcDef124b", FALSE); // test numeric parameter + + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "abc", FALSE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "outp1:mod10:fm", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "output1:mod10:fm", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "outp1:modulation:fm5", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "output:mod:fm", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#:MODulation#:FM#", "outp1:mod10a:fm", FALSE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#[:MODulation#]:FM#", "outp1:fm", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#[:MODulation#]:FM#", "outp1:mod10:fm", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#[:MODulation#]:FM#", "outp1:fm2", TRUE); // test numeric parameter + TEST_MATCH_COMMAND("OUTPut#[:MODulation#]:FM#", "output:fm", TRUE); // test numeric parameter } void test_composeCompoundCommand(void) { @@ -398,7 +432,7 @@ char * cmd = buffer + c2_pos; \ size_t len_prev = c1_len; \ size_t len = c2_len; \ - bool_t res; \ + scpi_bool_t res; \ \ strcpy(buffer, b); \ res = composeCompoundCommand(cmd_prev, len_prev, &cmd, &len); \ @@ -419,7 +453,7 @@ TEST_COMPOSE_COMMAND(":A:B;:C", 4, 5, 2, ":C", TRUE); TEST_COMPOSE_COMMAND(":A;C", 2, 3, 1, ":C", TRUE); - bool_t composeCompoundCommand(char * ptr_prev, size_t len_prev, char ** pptr, size_t * plen); + scpi_bool_t composeCompoundCommand(char * ptr_prev, size_t len_prev, char ** pptr, size_t * plen); } @@ -445,6 +479,7 @@ || (NULL == CU_add_test(pSuite, "strToLong", test_strToLong)) || (NULL == CU_add_test(pSuite, "strToDouble", test_strToDouble)) || (NULL == CU_add_test(pSuite, "compareStr", test_compareStr)) + || (NULL == CU_add_test(pSuite, "compareStrAndNum", test_compareStrAndNum)) || (NULL == CU_add_test(pSuite, "locateText", test_locateText)) || (NULL == CU_add_test(pSuite, "locateStr", test_locateStr)) || (NULL == CU_add_test(pSuite, "matchPattern", test_matchPattern)) -- Gitblit v1.9.1