Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: tests/blocking/wiconnect/WiconnectTests.cpp
- Revision:
- 0:836c9a6383e0
- Child:
- 1:5137ec8f4c45
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/blocking/wiconnect/WiconnectTests.cpp	Mon Aug 11 11:31:32 2014 +0000
@@ -0,0 +1,137 @@
+/*
+ * Copyright 2014, ACKme Networks
+ * All Rights Reserved.
+ *
+ * This is UNPUBLISHED PROPRIETARY SOURCE CODE of ACKme Networks;
+ * the contents of this file may not be disclosed to third parties, copied
+ * or duplicated in any form, in whole or in part, without the prior
+ * written permission of ACKme Networks.
+ */
+
+
+#include "tests/Tests.h"
+#include "Wiconnect.h"
+
+
+#define TIMEOUT 10000 // ms
+
+
+static volatile bool wiconnectNonBlockingCommandFinished = false;
+
+
+
+/*************************************************************************************************/
+WiconnectResult wiconnectSendRawBlockingCommand(int argc, char **argv)
+{
+    WiconnectResult result;
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+
+    strcpy(testBuffer, argv[0]);
+    --argc;
+    ++argv;
+
+    while(argc--)
+    {
+        strcat(testBuffer, " ");
+        strcat(testBuffer, argv[0]);
+        ++argv;
+    }
+
+    if(!WICONNECT_FAILED(result,  wiconnect->sendCommand(TIMEOUT, testBuffer, TEST_BUFFER_LENGTH, testBuffer)))
+    {
+        LOG_INFO_WRITE_STR("Response:\r\n", wiconnect->getResponseBuffer());
+    }
+
+    return result;
+}
+
+
+
+/*************************************************************************************************/
+static void responseHandler(WiconnectResult result, void *response, void *responseLen)
+{
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+
+    wiconnectNonBlockingCommandFinished = true;
+
+    if(result == WICONNECT_SUCCESS)
+    {
+        LOG_INFO_WRITE_STR("Non-blocking Response:\r\n", (const char*)response);
+    }
+    else
+    {
+        LOG_WICONNECT_ERROR(result, "Non-blocking command failed");
+    }
+}
+
+/*************************************************************************************************/
+WiconnectResult wiconnectSendRawNonBlockingCommand(int argc, char **argv)
+{
+
+    WiconnectResult result;
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+    char *ptr = testBuffer;
+
+    strcpy(testBuffer, argv[0]);
+    --argc;
+    ++argv;
+
+    while(argc--)
+    {
+        strcat(testBuffer, " ");
+        strcat(testBuffer, argv[0]);
+        ++argv;
+    }
+
+    wiconnectNonBlockingCommandFinished = false;
+    if(WICONNECT_FAILED(result,  wiconnect->sendCommand(Callback(responseHandler), testBuffer, TEST_BUFFER_LENGTH, TIMEOUT, testBuffer)))
+    {
+    }
+    else if(!wiconnectNonBlockingCommandFinished)
+    {
+        LOG_INFO("Non-blocking command processing...");
+    }
+
+    return result;
+}
+
+/*************************************************************************************************/
+WiconnectResult wiconnectGetVersionCommand(int argc, char **argv)
+{
+    WiconnectResult result;
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+
+    if(!WICONNECT_FAILED(result, wiconnect->getVersion(testBuffer, sizeof(testBuffer))))
+    {
+        LOG_INFO("Version: %s", testBuffer);
+    }
+    return result;
+}
+
+/*************************************************************************************************/
+WiconnectResult wiconnectDebugEnableCommand(int argc, char **argv)
+{
+    extern int wiconnectLogDebug(const char *str);
+    WiconnectResult result;
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+    bool enabled;
+
+    if(!StringUtil::parseBool(argv[0], &enabled))
+    {
+        return WICONNECT_BAD_ARG;
+    }
+
+    if(enabled)
+    {
+        wiconnect->setDebugLogger(LogFunc(wiconnectLogDebug));
+        LOG_INFO("WiConnet debugging enabled");
+    }
+    else
+    {
+        wiconnect->setDebugLogger(LogFunc());
+        LOG_INFO("WiConnet debugging disabled");
+    }
+
+    return WICONNECT_SUCCESS;
+}
+