Add a few more trivial socket_spec.h tests.
Also remove some dead code. The "missing port" case in parse_tcp_socket_spec hasn't been meaningful since we put the default port back. Test: treehugger Change-Id: I40958f0f1c2dd7f0315142c2c0363a70fe6f80fe
This commit is contained in:
parent
a269c7c3d1
commit
e65e002102
2 changed files with 33 additions and 6 deletions
|
|
@ -103,12 +103,6 @@ bool parse_tcp_socket_spec(std::string_view spec, std::string* hostname, int* po
|
|||
if (!android::base::ParseNetAddress(addr, &hostname_value, &port_value, serial, error)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (port_value == -1) {
|
||||
*error = "missing port in specification: ";
|
||||
*error += spec;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (hostname) {
|
||||
|
|
|
|||
|
|
@ -24,6 +24,13 @@
|
|||
#include <android-base/stringprintf.h>
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(socket_spec, parse_tcp_socket_spec_failure) {
|
||||
std::string hostname, error, serial;
|
||||
int port;
|
||||
EXPECT_FALSE(parse_tcp_socket_spec("sneakernet:5037", &hostname, &port, &serial, &error));
|
||||
EXPECT_TRUE(error.find("sneakernet") != std::string::npos);
|
||||
}
|
||||
|
||||
TEST(socket_spec, parse_tcp_socket_spec_just_port) {
|
||||
std::string hostname, error, serial;
|
||||
int port;
|
||||
|
|
@ -134,6 +141,19 @@ TEST(socket_spec, socket_spec_listen_connect_tcp) {
|
|||
EXPECT_NE(client_fd.get(), -1);
|
||||
}
|
||||
|
||||
TEST(socket_spec, socket_spec_connect_failure) {
|
||||
std::string error, serial;
|
||||
int port;
|
||||
unique_fd client_fd;
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "tcp:", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "acceptfd:", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "vsock:", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "vsock:x", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "vsock:5", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "vsock:5:x", &port, &serial, &error));
|
||||
EXPECT_FALSE(socket_spec_connect(&client_fd, "sneakernet:", &port, &serial, &error));
|
||||
}
|
||||
|
||||
TEST(socket_spec, socket_spec_listen_connect_localfilesystem) {
|
||||
std::string error, serial;
|
||||
int port;
|
||||
|
|
@ -152,3 +172,16 @@ TEST(socket_spec, socket_spec_listen_connect_localfilesystem) {
|
|||
EXPECT_NE(client_fd.get(), -1);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(socket_spec, is_socket_spec) {
|
||||
EXPECT_TRUE(is_socket_spec("tcp:blah"));
|
||||
EXPECT_TRUE(is_socket_spec("acceptfd:blah"));
|
||||
EXPECT_TRUE(is_socket_spec("local:blah"));
|
||||
EXPECT_TRUE(is_socket_spec("localreserved:blah"));
|
||||
}
|
||||
|
||||
TEST(socket_spec, is_local_socket_spec) {
|
||||
EXPECT_TRUE(is_local_socket_spec("local:blah"));
|
||||
EXPECT_TRUE(is_local_socket_spec("tcp:localhost"));
|
||||
EXPECT_FALSE(is_local_socket_spec("tcp:www.google.com"));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue