Skip to content

Commit 34c3302

Browse files
Adjustment of netsocket tests to the lossy mesh network limitation.
1 parent ef4fe98 commit 34c3302

File tree

5 files changed

+66
-5
lines changed

5 files changed

+66
-5
lines changed

TESTS/netsocket/dns/main.cpp

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "nsapi_dns.h"
2929
#include "events/EventQueue.h"
3030
#include "dns_tests.h"
31+
#include "ip6string.h"
3132

3233
using namespace utest::v1;
3334

@@ -161,7 +162,18 @@ static void net_bringup()
161162
net = NetworkInterface::get_default_instance();
162163
nsapi_error_t err = net->connect();
163164
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, err);
164-
printf("MBED: IP address is '%s'\n", net->get_ip_address() ? net->get_ip_address() : "null");
165+
const char *address = net->get_ip_address();
166+
167+
printf("MBED: IP address is '%s'\n", address ? address : "null");
168+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE == MESH
169+
uint8_t addr_hex[16];
170+
stoip6(address, strlen(address), addr_hex);
171+
if ((addr_hex[0] & 0xe0) != 0x20) {
172+
printf("Adress is not globlal Please check Border Router TEST SKIP \n");
173+
GREENTEA_TESTSUITE_RESULT(false);
174+
}
175+
#endif
176+
165177
}
166178

167179
static void net_bringdown()

TESTS/netsocket/tcp/main.cpp

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "utest.h"
2828
#include "utest/utest_stack_trace.h"
2929
#include "tcp_tests.h"
30+
#include "ip6string.h"
3031

3132
#ifndef ECHO_SERVER_ADDR
3233
#error [NOT_SUPPORTED] Requires parameters for echo server
@@ -72,7 +73,17 @@ static void _ifup()
7273
NetworkInterface *net = NetworkInterface::get_default_instance();
7374
nsapi_error_t err = net->connect();
7475
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, err);
75-
printf("MBED: TCPClient IP address is '%s'\n", net->get_ip_address() ? net->get_ip_address() : "null");
76+
const char *address = net->get_ip_address();
77+
78+
printf("MBED: TCPClient IP address is '%s'\n", address ? address : "null");
79+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE == MESH
80+
uint8_t addr_hex[16];
81+
stoip6(address, strlen(address), addr_hex);
82+
if ((addr_hex[0] & 0xe0) != 0x20) {
83+
printf("Adress is not globlal Please check Border Router TEST SKIP \n");
84+
GREENTEA_TESTSUITE_RESULT(false);
85+
}
86+
#endif
7687
}
7788

7889
static void _ifdown()
@@ -214,8 +225,10 @@ Case cases[] = {
214225
Case("TCPSOCKET_BIND_WRONG_TYPE", TCPSOCKET_BIND_WRONG_TYPE),
215226
Case("TCPSOCKET_BIND_UNOPENED", TCPSOCKET_BIND_UNOPENED),
216227
Case("TCPSOCKET_SETSOCKOPT_KEEPALIVE_VALID", TCPSOCKET_SETSOCKOPT_KEEPALIVE_VALID),
228+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE != MESH
217229
Case("TCPSOCKET_RECV_100K", TCPSOCKET_RECV_100K),
218230
Case("TCPSOCKET_RECV_100K_NONBLOCK", TCPSOCKET_RECV_100K_NONBLOCK),
231+
#endif
219232
Case("TCPSOCKET_RECV_TIMEOUT", TCPSOCKET_RECV_TIMEOUT),
220233
Case("TCPSOCKET_SEND_REPEAT", TCPSOCKET_SEND_REPEAT),
221234
Case("TCPSOCKET_SEND_TIMEOUT", TCPSOCKET_SEND_TIMEOUT),

TESTS/netsocket/tls/main.cpp

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "utest/utest_stack_trace.h"
2929
#include "tls_tests.h"
3030
#include "cert.h"
31+
#include "ip6string.h"
3132

3233
#ifndef ECHO_SERVER_ADDR
3334
#error [NOT_SUPPORTED] Requires parameters for echo server
@@ -66,7 +67,17 @@ static void _ifup()
6667
NetworkInterface *net = NetworkInterface::get_default_instance();
6768
nsapi_error_t err = net->connect();
6869
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, err);
69-
printf("MBED: TLSClient IP address is '%s'\n", net->get_ip_address() ? net->get_ip_address() : "null");
70+
const char *address = net->get_ip_address();
71+
72+
printf("MBED: TLSClient IP address is '%s'\n", address ? address : "null");
73+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE == MESH
74+
uint8_t addr_hex[16];
75+
stoip6(address, strlen(address), addr_hex);
76+
if ((addr_hex[0] & 0xe0) != 0x20) {
77+
printf("Adress is not globlal Please check Border Router TEST SKIP \n");
78+
GREENTEA_TESTSUITE_RESULT(false);
79+
}
80+
#endif
7081
}
7182

7283
static void _ifdown()
@@ -202,7 +213,9 @@ Case cases[] = {
202213
Case("TLSSOCKET_ECHOTEST_BURST_NONBLOCK", TLSSOCKET_ECHOTEST_BURST_NONBLOCK),
203214
Case("TLSSOCKET_RECV_TIMEOUT", TLSSOCKET_RECV_TIMEOUT),
204215
Case("TLSSOCKET_ENDPOINT_CLOSE", TLSSOCKET_ENDPOINT_CLOSE),
216+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE != MESH
205217
Case("TLSSOCKET_HANDSHAKE_INVALID", TLSSOCKET_HANDSHAKE_INVALID),
218+
#endif
206219
Case("TLSSOCKET_OPEN_TWICE", TLSSOCKET_OPEN_TWICE),
207220
Case("TLSSOCKET_OPEN_LIMIT", TLSSOCKET_OPEN_LIMIT),
208221
Case("TLSSOCKET_OPEN_DESTRUCT", TLSSOCKET_OPEN_DESTRUCT),

TESTS/netsocket/udp/main.cpp

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "utest.h"
2828
#include "utest/utest_stack_trace.h"
2929
#include "udp_tests.h"
30+
#include "ip6string.h"
3031

3132
#ifndef ECHO_SERVER_ADDR
3233
#error [NOT_SUPPORTED] Requires parameters for echo server
@@ -59,7 +60,17 @@ static void _ifup()
5960
NetworkInterface *net = NetworkInterface::get_default_instance();
6061
nsapi_error_t err = net->connect();
6162
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, err);
62-
printf("MBED: UDPClient IP address is '%s'\n", net->get_ip_address() ? net->get_ip_address() : "null");
63+
const char *address = net->get_ip_address();
64+
65+
printf("MBED: UDPClient IP address is '%s'\n", address ? address : "null");
66+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE == MESH
67+
uint8_t addr_hex[16];
68+
stoip6(address, strlen(address), addr_hex);
69+
if ((addr_hex[0] & 0xe0) != 0x20) {
70+
printf("Adress is not globlal Please check Border Router TEST SKIP \n");
71+
GREENTEA_TESTSUITE_RESULT(false);
72+
}
73+
#endif
6374
}
6475

6576
static void _ifdown()
@@ -180,10 +191,14 @@ Case cases[] = {
180191
Case("UDPSOCKET_BIND_UNOPENED", UDPSOCKET_BIND_UNOPENED),
181192
Case("UDPSOCKET_SENDTO_INVALID", UDPSOCKET_SENDTO_INVALID),
182193
Case("UDPSOCKET_ECHOTEST_NONBLOCK", UDPSOCKET_ECHOTEST_NONBLOCK),
194+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE != MESH
183195
Case("UDPSOCKET_ECHOTEST_BURST_NONBLOCK", UDPSOCKET_ECHOTEST_BURST_NONBLOCK),
196+
#endif
184197
Case("UDPSOCKET_SENDTO_REPEAT", UDPSOCKET_SENDTO_REPEAT),
185198
Case("UDPSOCKET_ECHOTEST", UDPSOCKET_ECHOTEST),
199+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE != MESH
186200
Case("UDPSOCKET_ECHOTEST_BURST", UDPSOCKET_ECHOTEST_BURST),
201+
#endif
187202
};
188203

189204
handlers_t udp_test_case_handlers = {

TESTS/netsocket/udp/udpsocket_echotest.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ static const int SIGIO_TIMEOUT = 5000; //[ms]
3232
static const int RETRIES = 2;
3333

3434
static const double EXPECTED_LOSS_RATIO = 0.0;
35-
static const double TOLERATED_LOSS_RATIO = 0.3;
3635

3736
UDPSocket *sock;
3837
EventFlags signals;
@@ -41,11 +40,20 @@ static const int BUFF_SIZE = 1200;
4140
char rx_buffer[BUFF_SIZE] = {0};
4241
char tx_buffer[BUFF_SIZE] = {0};
4342

43+
#if MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE != MESH
4444
static const int PKTS = 22;
4545
static const int pkt_sizes[PKTS] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, \
4646
100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, \
4747
1100, 1200
4848
};
49+
static const double TOLERATED_LOSS_RATIO = 0.3;
50+
#else
51+
static const int PKTS = 13;
52+
static const int pkt_sizes[PKTS] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, \
53+
100, 200, 300
54+
};
55+
static const double TOLERATED_LOSS_RATIO = 0.5;
56+
#endif
4957
Timer tc_exec_time;
5058
int time_allotted;
5159
}

0 commit comments

Comments
 (0)