Add more compile checks and resolve warnings
| | |
| | | #include "scpi/scpi.h" |
| | | #include "scpi-def.h" |
| | | |
| | | scpi_result_t DMM_MeasureVoltageDcQ(scpi_t * context) { |
| | | static scpi_result_t DMM_MeasureVoltageDcQ(scpi_t * context) { |
| | | scpi_number_t param1, param2; |
| | | char bf[15]; |
| | | fprintf(stderr, "meas:volt:dc\r\n"); // debug command name |
| | |
| | | } |
| | | |
| | | |
| | | scpi_result_t DMM_MeasureVoltageAcQ(scpi_t * context) { |
| | | static scpi_result_t DMM_MeasureVoltageAcQ(scpi_t * context) { |
| | | scpi_number_t param1, param2; |
| | | char bf[15]; |
| | | fprintf(stderr, "meas:volt:ac\r\n"); // debug command name |
| | |
| | | return SCPI_RES_OK; |
| | | } |
| | | |
| | | scpi_result_t DMM_ConfigureVoltageDc(scpi_t * context) { |
| | | static scpi_result_t DMM_ConfigureVoltageDc(scpi_t * context) { |
| | | double param1, param2; |
| | | fprintf(stderr, "conf:volt:dc\r\n"); // debug command name |
| | | |
| | |
| | | return SCPI_RES_OK; |
| | | } |
| | | |
| | | scpi_result_t TEST_Bool(scpi_t * context) { |
| | | static scpi_result_t TEST_Bool(scpi_t * context) { |
| | | scpi_bool_t param1; |
| | | fprintf(stderr, "TEST:BOOL\r\n"); // debug command name |
| | | |
| | |
| | | }; |
| | | |
| | | |
| | | scpi_result_t TEST_ChoiceQ(scpi_t * context) { |
| | | static scpi_result_t TEST_ChoiceQ(scpi_t * context) { |
| | | |
| | | int32_t param; |
| | | |
| | |
| | | return SCPI_RES_OK; |
| | | } |
| | | |
| | | scpi_result_t TEST_Numbers(scpi_t * context) { |
| | | static scpi_result_t TEST_Numbers(scpi_t * context) { |
| | | |
| | | fprintf(stderr, "RAW CMD %.*s\r\n", (int)context->paramlist.cmd_raw.length, context->paramlist.cmd_raw.data); |
| | | |
| | |
| | | PROG = test |
| | | |
| | | SRCS = main.c ../common/scpi-def.c |
| | | CFLAGS += -Wextra -I ../../libscpi/inc/ |
| | | CFLAGS += -Wextra -Wmissing-prototypes -Wimplicit -I ../../libscpi/inc/ |
| | | LDFLAGS += ../../libscpi/dist/libscpi.a -Wl,--as-needed |
| | | |
| | | .PHONY: clean all |
| | |
| | | PROG = test |
| | | |
| | | SRCS = main.c ../common/scpi-def.c |
| | | CFLAGS += -Wextra -I ../../libscpi/inc/ |
| | | CFLAGS += -Wextra -Wmissing-prototypes -Wimplicit -I ../../libscpi/inc/ |
| | | LDFLAGS += ../../libscpi/dist/libscpi.a -Wl,--as-needed |
| | | |
| | | .PHONY: clean all |
| | |
| | | PROG = test |
| | | |
| | | SRCS = main.c ../common/scpi-def.c |
| | | CFLAGS += -Wextra -I ../../libscpi/inc/ |
| | | CFLAGS += -Wextra -Wmissing-prototypes -Wimplicit -I ../../libscpi/inc/ |
| | | LDFLAGS += ../../libscpi/dist/libscpi.a -Wl,--as-needed |
| | | |
| | | .PHONY: clean all |
| | |
| | | #include <sys/ioctl.h> |
| | | #include <errno.h> |
| | | #include <arpa/inet.h> |
| | | #include <unistd.h> |
| | | |
| | | #include "scpi/scpi.h" |
| | | #include "../common/scpi-def.h" |
| | |
| | | PROG = test |
| | | |
| | | SRCS = main.c ../common/scpi-def.c |
| | | CFLAGS += -Wextra -I ../../libscpi/inc/ |
| | | CFLAGS += -Wextra -Wmissing-prototypes -Wimplicit -I ../../libscpi/inc/ |
| | | LDFLAGS += ../../libscpi/dist/libscpi.a -Wl,--as-needed |
| | | |
| | | .PHONY: clean all |
| | |
| | | #include <sys/ioctl.h> |
| | | #include <errno.h> |
| | | #include <arpa/inet.h> |
| | | #include <unistd.h> |
| | | |
| | | #include "scpi/scpi.h" |
| | | #include "../common/scpi-def.h" |
| | |
| | | LIBNAME = scpi |
| | | |
| | | CFLAGS += -Wextra -g -Iinc |
| | | CFLAGS += -Wextra -Wmissing-prototypes -Wimplicit -g -Iinc |
| | | LDFLAGS += -Wl,--as-needed |
| | | TESTFLAGS += -lcunit $(CFLAGS) |
| | | |
| | |
| | | * CUnit Test Suite |
| | | */ |
| | | |
| | | int init_suite(void) { |
| | | static int init_suite(void) { |
| | | return 0; |
| | | } |
| | | |
| | | int clean_suite(void) { |
| | | static int clean_suite(void) { |
| | | return 0; |
| | | } |
| | | |
| | | void testFifo() { |
| | | static void testFifo() { |
| | | fifo_t fifo; |
| | | fifo_init(&fifo); |
| | | int16_t value; |
| | |
| | | * CUnit Test Suite |
| | | */ |
| | | |
| | | scpi_result_t text_function(scpi_t* context) { |
| | | static scpi_result_t text_function(scpi_t* context) { |
| | | const char* param; |
| | | size_t param_len; |
| | | |
| | |
| | | return SCPI_RES_OK; |
| | | } |
| | | |
| | | scpi_result_t test_treeA(scpi_t* context) { |
| | | static scpi_result_t test_treeA(scpi_t* context) { |
| | | |
| | | SCPI_ResultInt(context, 10); |
| | | |
| | | return SCPI_RES_OK; |
| | | } |
| | | |
| | | scpi_result_t test_treeB(scpi_t* context) { |
| | | static scpi_result_t test_treeB(scpi_t* context) { |
| | | |
| | | SCPI_ResultInt(context, 20); |
| | | |
| | |
| | | }; |
| | | |
| | | |
| | | int init_suite(void) { |
| | | static int init_suite(void) { |
| | | SCPI_Init(&scpi_context); |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | int clean_suite(void) { |
| | | static int clean_suite(void) { |
| | | return 0; |
| | | } |
| | | |
| | | void testCommandsHandling(void) { |
| | | static void testCommandsHandling(void) { |
| | | #define TEST_INPUT(data, output) { \ |
| | | SCPI_Input(&scpi_context, data, strlen(data)); \ |
| | | CU_ASSERT_STRING_EQUAL(output, output_buffer); \ |
| | |
| | | error_buffer_clear(); |
| | | } |
| | | |
| | | void testErrorHandling(void) { |
| | | static void testErrorHandling(void) { |
| | | output_buffer_clear(); |
| | | error_buffer_clear(); |
| | | |
| | |
| | | error_buffer_clear(); |
| | | } |
| | | |
| | | void testIEEE4882(void) { |
| | | static void testIEEE4882(void) { |
| | | #define TEST_IEEE4882(data, output) { \ |
| | | SCPI_Input(&scpi_context, data, strlen(data)); \ |
| | | CU_ASSERT_STRING_EQUAL(output, output_buffer); \ |
| | |
| | | TEST_IEEE4882("SYSTem:VERSion?\r\n", "1999.0\r\n"); |
| | | } |
| | | |
| | | void testParameters(void) { |
| | | static void testParameters(void) { |
| | | // TODO: test parsin parameters |
| | | |
| | | // TODO: Int |
| | |
| | | // TODO: Choice |
| | | } |
| | | |
| | | void testResults(void) { |
| | | static void testResults(void) { |
| | | // TODO: test producing results |
| | | |
| | | // TODO: String |
| | |
| | | * CUnit Test Suite |
| | | */ |
| | | |
| | | int init_suite(void) { |
| | | static int init_suite(void) { |
| | | return 0; |
| | | } |
| | | |
| | | int clean_suite(void) { |
| | | static int clean_suite(void) { |
| | | return 0; |
| | | } |
| | | |
| | | void test_strnpbrk() { |
| | | static void test_strnpbrk() { |
| | | char str[] = "ahoj"; |
| | | |
| | | CU_ASSERT(strnpbrk(str, 4, "a") == (str + 0)); |
| | |
| | | CU_ASSERT(strnpbrk(str, 4, "xo") == (str + 2)); |
| | | } |
| | | |
| | | void test_longToStr() { |
| | | static void test_longToStr() { |
| | | char str[32]; |
| | | size_t len; |
| | | |
| | |
| | | CU_ASSERT(str[2] == '\0'); |
| | | } |
| | | |
| | | void test_doubleToStr() { |
| | | static void test_doubleToStr() { |
| | | size_t result; |
| | | char str[50]; |
| | | |
| | |
| | | TEST_DOUBLE_TO_STR(-1.3e-30, 8, "-1.3e-30"); |
| | | } |
| | | |
| | | void test_strToLong() { |
| | | static void test_strToLong() { |
| | | size_t result; |
| | | int32_t val; |
| | | |
| | |
| | | TEST_STR_TO_LONG("018", 2, 1); // octal 1, 8 is ignored |
| | | } |
| | | |
| | | void test_strToDouble() { |
| | | static void test_strToDouble() { |
| | | double val; |
| | | size_t result; |
| | | |
| | |
| | | |
| | | } |
| | | |
| | | void test_compareStr() { |
| | | static void test_compareStr() { |
| | | |
| | | CU_ASSERT_TRUE(compareStr("abcd", 1, "afgh", 1)); |
| | | CU_ASSERT_TRUE(compareStr("ABCD", 4, "abcd", 4)); |
| | |
| | | CU_ASSERT_FALSE(compareStr("ABCD", 4, "abcd", 3)); |
| | | } |
| | | |
| | | void test_compareStrAndNum() { |
| | | static void test_compareStrAndNum() { |
| | | |
| | | CU_ASSERT_TRUE(compareStrAndNum("abcd", 1, "afgh", 1)); |
| | | CU_ASSERT_TRUE(compareStrAndNum("ABCD", 4, "abcd", 4)); |
| | |
| | | |
| | | } |
| | | |
| | | void test_locateText() { |
| | | static void test_locateText() { |
| | | |
| | | const char * v; |
| | | const char * b; |
| | |
| | | TEST_LOCATE_TEXT(" \"a\" , a ", TRUE, 2, 1); |
| | | } |
| | | |
| | | void test_locateStr() { |
| | | static void test_locateStr() { |
| | | |
| | | const char * v; |
| | | const char * b; |
| | |
| | | TEST_LOCATE_STR(" \"a\" , a ", TRUE, 1, 3); |
| | | } |
| | | |
| | | void test_matchPattern() { |
| | | static void test_matchPattern() { |
| | | scpi_bool_t result; |
| | | |
| | | #define TEST_MATCH_PATTERN(p, s, r) \ |
| | |
| | | TEST_MATCH_PATTERN("AB", "a", FALSE); |
| | | } |
| | | |
| | | void test_matchCommand() { |
| | | static void test_matchCommand() { |
| | | scpi_bool_t result; |
| | | |
| | | #define TEST_MATCH_COMMAND(p, s, r) \ |
| | |
| | | TEST_MATCH_COMMAND("OUTPut#[:MODulation#]:FM#", "output:fm", TRUE); // test numeric parameter |
| | | } |
| | | |
| | | void test_composeCompoundCommand(void) { |
| | | static void test_composeCompoundCommand(void) { |
| | | |
| | | #define TEST_COMPOSE_COMMAND(b, c1_len, c2_pos, c2_len, c2_final, r) \ |
| | | { \ |