Skip to content

Commit 4fa57e3

Browse files
Veijo PesonenSeppo Takalo
authored andcommitted
Greentea TCP test cases - check all socket calls
1 parent 1fef160 commit 4fa57e3

8 files changed

+42
-49
lines changed

TESTS/netsocket/tcp/main.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,26 @@ static void _ifdown() {
6868
printf("MBED: ifdown\n");
6969
}
7070

71+
void tcpsocket_connect_to_echo_srv(TCPSocket& sock) {
72+
SocketAddress tcp_addr;
73+
74+
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
75+
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
76+
77+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.open(get_interface()));
78+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.connect(tcp_addr));
79+
}
80+
81+
void tcpsocket_connect_to_discard_srv(TCPSocket& sock) {
82+
SocketAddress tcp_addr;
83+
84+
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
85+
tcp_addr.set_port(9);
86+
87+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.open(get_interface()));
88+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.connect(tcp_addr));
89+
}
90+
7191
void fill_tx_buffer_ascii(char *buff, size_t len)
7292
{
7393
for (size_t i = 0; i<len; ++i) {

TESTS/netsocket/tcp/tcp_tests.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
NetworkInterface* get_interface();
2222
void drop_bad_packets(TCPSocket& sock);
2323
void fill_tx_buffer_ascii(char *buff, size_t len);
24+
void tcpsocket_connect_to_echo_srv(TCPSocket& sock);
25+
void tcpsocket_connect_to_discard_srv(TCPSocket& sock);
2426

2527
/*
2628
* Test cases

TESTS/netsocket/tcp/tcpsocket_echotest.cpp

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,7 @@ static void _sigio_handler(osThreadId id) {
4848

4949
void test_tcpsocket_echotest()
5050
{
51-
SocketAddress tcp_addr;
52-
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
53-
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
54-
55-
TCPSocket sock;
56-
sock.open(get_interface());
57-
sock.connect(tcp_addr);
51+
tcpsocket_connect_to_echo_srv(sock);
5852

5953
int recvd;
6054
int sent;
@@ -82,7 +76,7 @@ void test_tcpsocket_echotest()
8276
}
8377
TEST_ASSERT_EQUAL(0, memcmp(tx_buffer, rx_buffer, sent));
8478
}
85-
sock.close();
79+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
8680
}
8781

8882
void tcpsocket_echotest_nonblock_receiver(void *receive_bytes)
@@ -111,12 +105,7 @@ void tcpsocket_echotest_nonblock_receiver(void *receive_bytes)
111105

112106
void test_tcpsocket_echotest_nonblock()
113107
{
114-
SocketAddress tcp_addr;
115-
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
116-
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
117-
118-
sock.open(get_interface());
119-
sock.connect(tcp_addr);
108+
tcpsocket_connect_to_echo_srv(sock);
120109
sock.set_blocking(false);
121110
sock.sigio(callback(_sigio_handler, Thread::gettid()));
122111

@@ -155,5 +144,5 @@ void test_tcpsocket_echotest_nonblock()
155144
delete thread;
156145
}
157146
free(stack_mem);
158-
sock.close();
147+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
159148
}

TESTS/netsocket/tcp/tcpsocket_echotest_burst.cpp

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,8 @@ static void _sigio_handler(osThreadId id) {
4040

4141
void test_tcpsocket_echotest_burst()
4242
{
43-
SocketAddress tcp_addr;
44-
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
45-
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
46-
4743
TCPSocket sock;
48-
sock.open(get_interface());
49-
sock.connect(tcp_addr);
44+
tcpsocket_connect_to_echo_srv(sock);
5045
sock.sigio(callback(_sigio_handler, Thread::gettid()));
5146

5247
// TX buffer to be preserved for comparison
@@ -88,18 +83,13 @@ void test_tcpsocket_echotest_burst()
8883

8984
TEST_ASSERT_EQUAL(0, memcmp(tx_buffer, rx_buffer, BURST_SIZE));
9085
}
91-
sock.close();
86+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
9287
}
9388

9489
void test_tcpsocket_echotest_burst_nonblock()
9590
{
96-
SocketAddress tcp_addr;
97-
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
98-
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
99-
10091
TCPSocket sock;
101-
sock.open(get_interface());
102-
sock.connect(tcp_addr);
92+
tcpsocket_connect_to_echo_srv(sock);
10393
sock.set_blocking(false);
10494
sock.sigio(callback(_sigio_handler, Thread::gettid()));
10595

@@ -150,5 +140,5 @@ void test_tcpsocket_echotest_burst_nonblock()
150140

151141
TEST_ASSERT_EQUAL(0, memcmp(tx_buffer, rx_buffer, BURST_SIZE));
152142
}
153-
sock.close();
143+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
154144
}

TESTS/netsocket/tcp/tcpsocket_recv_timeout.cpp

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,11 @@ static void _sigio_handler(osThreadId id) {
3232

3333
void test_tcpsocket_recv_timeout()
3434
{
35-
SocketAddress tcp_addr;
36-
get_interface()->gethostbyname(MBED_CONF_APP_ECHO_SERVER_ADDR, &tcp_addr);
37-
tcp_addr.set_port(MBED_CONF_APP_ECHO_SERVER_PORT);
38-
3935
static const int DATA_LEN = 100;
4036
char buff[DATA_LEN] = {0};
4137

4238
TCPSocket sock;
43-
sock.open(get_interface());
44-
sock.connect(tcp_addr);
39+
tcpsocket_connect_to_echo_srv(sock);
4540
sock.set_timeout(100);
4641
sock.sigio(callback(_sigio_handler, Thread::gettid()));
4742

@@ -72,5 +67,5 @@ void test_tcpsocket_recv_timeout()
7267
pkt_unrecvd -= recvd;
7368
}
7469
}
75-
sock.close();
70+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
7671
}

TESTS/netsocket/tcp/tcpsocket_send_repeat.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ using namespace utest::v1;
2828
void test_tcpsocket_send_repeat()
2929
{
3030
TCPSocket sock;
31-
sock.open(get_interface());
32-
sock.connect(MBED_CONF_APP_ECHO_SERVER_ADDR, 9);
31+
tcpsocket_connect_to_discard_srv(sock);
3332

3433
int err;
3534
Timer timer;
@@ -38,5 +37,6 @@ void test_tcpsocket_send_repeat()
3837
err = sock.send(tx_buffer, sizeof(tx_buffer));
3938
TEST_ASSERT_EQUAL(sizeof(tx_buffer), err);
4039
}
41-
sock.close();
40+
41+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
4242
}

TESTS/netsocket/tcp/tcpsocket_send_timeout.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ using namespace utest::v1;
2828
void test_tcpsocket_send_timeout()
2929
{
3030
TCPSocket sock;
31-
sock.open(get_interface());
32-
sock.connect(MBED_CONF_APP_ECHO_SERVER_ADDR, 9);
31+
tcpsocket_connect_to_discard_srv(sock);
3332

3433
int err;
3534
Timer timer;
@@ -42,5 +41,6 @@ void test_tcpsocket_send_timeout()
4241
TEST_ASSERT_EQUAL(sizeof(tx_buffer), err);
4342
TEST_ASSERT(timer.read_ms() <= 800);
4443
}
45-
sock.close();
44+
45+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
4646
}

TESTS/netsocket/tcp/tcpsocket_thread_per_socket_safety.cpp

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,7 @@ static void _sigio_handler2(osThreadId id) {
4343
static void check_const_len_rand_sequence()
4444
{
4545
TCPSocket sock;
46-
sock.open(get_interface());
47-
sock.connect(MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
46+
tcpsocket_connect_to_echo_srv(sock);
4847
sock.sigio(callback(_sigio_handler1, Thread::gettid()));
4948

5049
static const int BUFF_SIZE = 10;
@@ -90,15 +89,13 @@ static void check_const_len_rand_sequence()
9089
}
9190
TEST_ASSERT_EQUAL(0, memcmp(tx_buff, rx_buff, BUFF_SIZE));
9291
}
93-
sock.close();
92+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
9493
}
9594

9695
static void check_var_len_rand_sequence()
9796
{
9897
TCPSocket sock;
99-
100-
sock.open(get_interface());
101-
sock.connect(MBED_CONF_APP_ECHO_SERVER_ADDR, MBED_CONF_APP_ECHO_SERVER_PORT);
98+
tcpsocket_connect_to_echo_srv(sock);
10299
sock.sigio(callback(_sigio_handler2, Thread::gettid()));
103100

104101
static const int BUFF_SIZE = 1001;
@@ -145,7 +142,7 @@ static void check_var_len_rand_sequence()
145142
TEST_ASSERT_EQUAL(0, memcmp(tx_buff, rx_buff, i));
146143
}
147144

148-
sock.close();
145+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
149146
}
150147

151148
void test_tcpsocket_thread_per_socket_safety()

0 commit comments

Comments
 (0)