Skip to content

Commit 57a5735

Browse files
authored
Merge pull request #5576 from jeromecoutant/PR_IP
Ethernet tests update
2 parents aff1d30 + d8cc5a3 commit 57a5735

File tree

5 files changed

+75
-53
lines changed

5 files changed

+75
-53
lines changed

TESTS/netsocket/gethostbyname/main.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ using namespace utest::v1;
2929

3030
// Hostname for testing against
3131
// Must have A and AAAA records
32-
#ifndef MBED_DNS_TEST_HOST
33-
#define MBED_DNS_TEST_HOST "connector.mbed.com"
32+
#ifndef MBED_CONF_APP_DNS_TEST_HOST
33+
#define MBED_CONF_APP_DNS_TEST_HOST "connector.mbed.com"
3434
#endif
3535

3636

@@ -59,9 +59,9 @@ void net_bringup() {
5959
// DNS tests
6060
void test_dns_query() {
6161
SocketAddress addr;
62-
int err = net->gethostbyname(MBED_DNS_TEST_HOST, &addr);
62+
int err = net->gethostbyname(MBED_CONF_APP_DNS_TEST_HOST, &addr);
6363
printf("DNS: query \"%s\" => \"%s\"\n",
64-
MBED_DNS_TEST_HOST, addr.get_ip_address());
64+
MBED_CONF_APP_DNS_TEST_HOST, addr.get_ip_address());
6565

6666
TEST_ASSERT_EQUAL(0, err);
6767
TEST_ASSERT((bool)addr);
@@ -70,9 +70,9 @@ void test_dns_query() {
7070

7171
void test_dns_query_pref() {
7272
SocketAddress addr;
73-
int err = net->gethostbyname(MBED_DNS_TEST_HOST, &addr, ip_pref);
73+
int err = net->gethostbyname(MBED_CONF_APP_DNS_TEST_HOST, &addr, ip_pref);
7474
printf("DNS: query %s \"%s\" => \"%s\"\n",
75-
ip_pref_repr, MBED_DNS_TEST_HOST, addr.get_ip_address());
75+
ip_pref_repr, MBED_CONF_APP_DNS_TEST_HOST, addr.get_ip_address());
7676

7777
TEST_ASSERT_EQUAL(0, err);
7878
TEST_ASSERT((bool)addr);

TESTS/netsocket/socket_sigio/main.cpp

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,13 @@
2929

3030
using namespace utest::v1;
3131

32+
#ifndef MBED_CONF_APP_HTTP_SERVER_NAME
33+
#define MBED_CONF_APP_HTTP_SERVER_NAME "os.mbed.com"
34+
#define MBED_CONF_APP_HTTP_SERVER_FILE_PATH "/media/uploads/mbed_official/hello.txt"
35+
#endif
3236

3337
namespace {
3438
// Test connection information
35-
const char *HTTP_SERVER_NAME = "os.mbed.com";
36-
const char *HTTP_SERVER_FILE_PATH = "/media/uploads/mbed_official/hello.txt";
3739
const int HTTP_SERVER_PORT = 80;
3840
#if defined(TARGET_VK_RZ_A1H)
3941
const int RECV_BUFFER_SIZE = 300;
@@ -97,12 +99,14 @@ void prep_buffer() {
9799
// We are constructing GET command like this:
98100
// GET http://developer.mbed.org/media/uploads/mbed_official/hello.txt HTTP/1.0\n\n
99101
strcpy(buffer, "GET http://");
100-
strcat(buffer, HTTP_SERVER_NAME);
101-
strcat(buffer, HTTP_SERVER_FILE_PATH);
102+
strcat(buffer, MBED_CONF_APP_HTTP_SERVER_NAME);
103+
strcat(buffer, MBED_CONF_APP_HTTP_SERVER_FILE_PATH);
102104
strcat(buffer, " HTTP/1.0\n\n");
103105
}
104106

105107
void test_socket_attach() {
108+
bool result = false;
109+
106110
// Dispatch event queue
107111
Thread eventThread;
108112
EventQueue queue(4*EVENTS_EVENT_SIZE);
@@ -111,8 +115,8 @@ void test_socket_attach() {
111115
printf("TCP client IP Address is %s\r\n", net->get_ip_address());
112116

113117
TCPSocket sock(net);
114-
printf("HTTP: Connection to %s:%d\r\n", HTTP_SERVER_NAME, HTTP_SERVER_PORT);
115-
if (sock.connect(HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
118+
printf("HTTP: Connection to %s:%d\r\n", MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT);
119+
if (sock.connect(MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
116120
printf("HTTP: OK\r\n");
117121

118122
prep_buffer();
@@ -122,10 +126,13 @@ void test_socket_attach() {
122126
sock.send(buffer, strlen(buffer));
123127
// wait for recv data
124128
recvd.wait();
129+
130+
result = true;
125131
} else {
126132
printf("HTTP: ERROR\r\n");
127133
}
128134
sock.close();
135+
TEST_ASSERT_EQUAL(true, result);
129136
}
130137

131138
void cb_fail() {
@@ -145,8 +152,8 @@ void test_socket_detach() {
145152
printf("TCP client IP Address is %s\r\n", net->get_ip_address());
146153

147154
TCPSocket sock(net);
148-
printf("HTTP: Connection to %s:%d\r\n", HTTP_SERVER_NAME, HTTP_SERVER_PORT);
149-
if (sock.connect(HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
155+
printf("HTTP: Connection to %s:%d\r\n", MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT);
156+
if (sock.connect(MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
150157
printf("HTTP: OK\r\n");
151158

152159
prep_buffer();
@@ -172,8 +179,8 @@ void test_socket_reattach() {
172179
printf("TCP client IP Address is %s\r\n", net->get_ip_address());
173180

174181
TCPSocket sock(net);
175-
printf("HTTP: Connection to %s:%d\r\n", HTTP_SERVER_NAME, HTTP_SERVER_PORT);
176-
if (sock.connect(HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
182+
printf("HTTP: Connection to %s:%d\r\n", MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT);
183+
if (sock.connect(MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
177184
printf("HTTP: OK\r\n");
178185

179186
prep_buffer();

TESTS/netsocket/tcp_echo/main.cpp

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@
1515
* limitations under the License.
1616
*/
1717

18-
#ifndef MBED_CONF_APP_CONNECT_STATEMENT
19-
#error [NOT_SUPPORTED] No network configuration found for this target.
20-
#endif
18+
#ifndef MBED_CONF_APP_CONNECT_STATEMENT
19+
#error [NOT_SUPPORTED] No network configuration found for this target.
20+
#endif
2121

2222
#include "mbed.h"
2323
#include MBED_CONF_APP_HEADER_FILE
@@ -35,7 +35,6 @@ using namespace utest::v1;
3535
namespace {
3636
char tx_buffer[MBED_CFG_TCP_CLIENT_ECHO_BUFFER_SIZE] = {0};
3737
char rx_buffer[MBED_CFG_TCP_CLIENT_ECHO_BUFFER_SIZE] = {0};
38-
const char ASCII_MAX = '~' - ' ';
3938
}
4039

4140
void prep_buffer(char *tx_buffer, size_t tx_size) {
@@ -60,15 +59,35 @@ void test_tcp_echo() {
6059

6160
TCPSocket sock(net);
6261

62+
#if defined(MBED_CONF_APP_ECHO_SERVER_ADDR) && defined(MBED_CONF_APP_ECHO_SERVER_PORT)
63+
printf("TCP: Connect to %s:%d\r\n", MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
6364
SocketAddress tcp_addr(MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
65+
#else /* MBED_CONF_APP_ECHO_SERVER_ADDR && MBED_CONF_APP_ECHO_SERVER_PORT */
66+
char recv_key[] = "host_port";
67+
char ipbuf[60] = {0};
68+
char portbuf[16] = {0};
69+
unsigned int port = 0;
70+
71+
greentea_send_kv("target_ip", net->get_ip_address());
72+
greentea_send_kv("host_ip", " ");
73+
greentea_parse_kv(recv_key, ipbuf, sizeof(recv_key), sizeof(ipbuf));
74+
75+
greentea_send_kv("host_port", " ");
76+
greentea_parse_kv(recv_key, portbuf, sizeof(recv_key), sizeof(ipbuf));
77+
sscanf(portbuf, "%u", &port);
78+
79+
printf("TCP: Connect to %s:%d\r\n", ipbuf, port);
80+
SocketAddress tcp_addr(ipbuf, port);
81+
#endif /* MBED_CONF_APP_ECHO_SERVER_ADDR && MBED_CONF_APP_ECHO_SERVER_PORT */
6482

6583
if (sock.connect(tcp_addr) == 0) {
66-
printf("HTTP: Connected to %s:%d\r\n", MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
6784
printf("tx_buffer buffer size: %u\r\n", sizeof(tx_buffer));
6885
printf("rx_buffer buffer size: %u\r\n", sizeof(rx_buffer));
6986

7087
prep_buffer(tx_buffer, sizeof(tx_buffer));
88+
#if defined(MBED_CONF_APP_TCP_ECHO_PREFIX)
7189
sock.recv(rx_buffer, sizeof(MBED_CONF_APP_TCP_ECHO_PREFIX));
90+
#endif /* MBED_CONF_APP_TCP_ECHO_PREFIX */
7291
const int ret = sock.send(tx_buffer, sizeof(tx_buffer));
7392
if (ret >= 0) {
7493
printf("sent %d bytes - %.*s \n", ret, ret, tx_buffer);
@@ -96,16 +115,7 @@ void test_tcp_echo() {
96115

97116
// Test setup
98117
utest::v1::status_t test_setup(const size_t number_of_cases) {
99-
char uuid[48] = {0};
100118
GREENTEA_SETUP(240, "tcp_echo");
101-
102-
// create mac address based on uuid
103-
uint64_t mac = 0;
104-
for (int i = 0; i < sizeof(uuid); i++) {
105-
mac += uuid[i];
106-
}
107-
//mbed_set_mac_address((const char*)mac, /*coerce control bits*/ 1);
108-
109119
return verbose_test_setup_handler(number_of_cases);
110120
}
111121

TESTS/netsocket/tcp_hello_world/main.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,13 @@
2929

3030
using namespace utest::v1;
3131

32+
#ifndef MBED_CONF_APP_HTTP_SERVER_NAME
33+
#define MBED_CONF_APP_HTTP_SERVER_NAME "os.mbed.com"
34+
#define MBED_CONF_APP_HTTP_SERVER_FILE_PATH "/media/uploads/mbed_official/hello.txt"
35+
#endif
3236

3337
namespace {
3438
// Test connection information
35-
const char *HTTP_SERVER_NAME = "os.mbed.com";
36-
const char *HTTP_SERVER_FILE_PATH = "/media/uploads/mbed_official/hello.txt";
3739
const int HTTP_SERVER_PORT = 80;
3840
#if defined(TARGET_VK_RZ_A1H)
3941
const int RECV_BUFFER_SIZE = 300;
@@ -60,15 +62,15 @@ void test_tcp_hello_world() {
6062
printf("TCP client IP Address is %s\r\n", net->get_ip_address());
6163

6264
TCPSocket sock(net);
63-
printf("HTTP: Connection to %s:%d\r\n", HTTP_SERVER_NAME, HTTP_SERVER_PORT);
64-
if (sock.connect(HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
65+
printf("HTTP: Connection to %s:%d\r\n", MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT);
66+
if (sock.connect(MBED_CONF_APP_HTTP_SERVER_NAME, HTTP_SERVER_PORT) == 0) {
6567
printf("HTTP: OK\r\n");
6668

6769
// We are constructing GET command like this:
6870
// GET http://developer.mbed.org/media/uploads/mbed_official/hello.txt HTTP/1.0\n\n
6971
strcpy(buffer, "GET http://");
70-
strcat(buffer, HTTP_SERVER_NAME);
71-
strcat(buffer, HTTP_SERVER_FILE_PATH);
72+
strcat(buffer, MBED_CONF_APP_HTTP_SERVER_NAME);
73+
strcat(buffer, MBED_CONF_APP_HTTP_SERVER_FILE_PATH);
7274
strcat(buffer, " HTTP/1.0\n\n");
7375
// Send GET command
7476
sock.send(buffer, strlen(buffer));

TESTS/netsocket/udp_echo/main.cpp

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -40,19 +40,12 @@ using namespace utest::v1;
4040
namespace {
4141
char tx_buffer[MBED_CFG_UDP_CLIENT_ECHO_BUFFER_SIZE] = {0};
4242
char rx_buffer[MBED_CFG_UDP_CLIENT_ECHO_BUFFER_SIZE] = {0};
43-
const char ASCII_MAX = '~' - ' ';
4443
const int ECHO_LOOPS = 16;
45-
char uuid[48] = {0};
4644
}
4745

48-
void prep_buffer(char *uuid, char *tx_buffer, size_t tx_size) {
46+
void prep_buffer(char *tx_buffer, size_t tx_size) {
4947
size_t i = 0;
5048

51-
memcpy(tx_buffer, uuid, strlen(uuid));
52-
i += strlen(uuid);
53-
54-
tx_buffer[i++] = ' ';
55-
5649
for (; i<tx_size; ++i) {
5750
tx_buffer[i] = (rand() % 10) + '0';
5851
}
@@ -76,11 +69,29 @@ void test_udp_echo() {
7669
sock.open(net);
7770
sock.set_timeout(MBED_CFG_UDP_CLIENT_ECHO_TIMEOUT);
7871

72+
#if defined(MBED_CONF_APP_ECHO_SERVER_ADDR) && defined(MBED_CONF_APP_ECHO_SERVER_PORT)
7973
SocketAddress udp_addr(MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
74+
#else /* MBED_CONF_APP_ECHO_SERVER_ADDR && MBED_CONF_APP_ECHO_SERVER_PORT */
75+
char recv_key[] = "host_port";
76+
char ipbuf[60] = {0};
77+
char portbuf[16] = {0};
78+
unsigned int port = 0;
79+
80+
greentea_send_kv("target_ip", net->get_ip_address());
81+
greentea_send_kv("host_ip", " ");
82+
greentea_parse_kv(recv_key, ipbuf, sizeof(recv_key), sizeof(ipbuf));
83+
84+
greentea_send_kv("host_port", " ");
85+
greentea_parse_kv(recv_key, portbuf, sizeof(recv_key), sizeof(ipbuf));
86+
sscanf(portbuf, "%u", &port);
87+
88+
printf("MBED: UDP Server IP address received: %s:%d \n", ipbuf, port);
89+
SocketAddress udp_addr(ipbuf, port);
90+
#endif /* MBED_CONF_APP_ECHO_SERVER_ADDR && MBED_CONF_APP_ECHO_SERVER_PORT */
8091

8192
int success = 0;
8293
for (int i = 0; success < ECHO_LOOPS; i++) {
83-
prep_buffer(uuid, tx_buffer, sizeof(tx_buffer));
94+
prep_buffer(tx_buffer, sizeof(tx_buffer));
8495
const int ret = sock.sendto(udp_addr, tx_buffer, sizeof(tx_buffer));
8596
if (ret >= 0) {
8697
printf("[%02d] sent %d bytes - %.*s \n", i, ret, ret, tx_buffer);
@@ -127,14 +138,6 @@ void test_udp_echo() {
127138
// Test setup
128139
utest::v1::status_t test_setup(const size_t number_of_cases) {
129140
GREENTEA_SETUP(240, "udp_echo");
130-
131-
// create mac address based on uuid
132-
uint64_t mac = 0;
133-
for (int i = 0; i < sizeof(uuid); i++) {
134-
mac += uuid[i];
135-
}
136-
//mbed_set_mac_address((const char*)mac, /*coerce control bits*/ 1);
137-
138141
return verbose_test_setup_handler(number_of_cases);
139142
}
140143

0 commit comments

Comments
 (0)