Fix netlink_request_test.cpp.
Add a cc_test_host rule for it, and fix some compilation errors. Fixing
the test now since the netlink functionality will be extended soon for
the more complex network configuration with VLANs.
Bug: 111941923
Test: Ran cuttlefish_net_tests
Change-Id: Ib21361319aff5bd124d8e9a16ebbc56c403bcd91
diff --git a/common/libs/net/Android.bp b/common/libs/net/Android.bp
index 8bfebdc..feb3b88 100644
--- a/common/libs/net/Android.bp
+++ b/common/libs/net/Android.bp
@@ -26,3 +26,22 @@
],
defaults: ["cuttlefish_host_and_guest"],
}
+
+cc_test_host {
+ name: "cuttlefish_net_tests",
+ srcs: [
+ "netlink_request_test.cpp",
+ ],
+ header_libs: ["cuttlefish_glog"],
+ shared_libs: [
+ "libcuttlefish_fs",
+ "cuttlefish_net",
+ "cuttlefish_auto_resources",
+ "libbase",
+ ],
+ static_libs: [
+ "libgmock",
+ "libgtest_host",
+ ],
+ defaults: ["cuttlefish_host_only"],
+}
diff --git a/common/libs/net/netlink_request_test.cpp b/common/libs/net/netlink_request_test.cpp
index 67b9923..3c5054b 100644
--- a/common/libs/net/netlink_request_test.cpp
+++ b/common/libs/net/netlink_request_test.cpp
@@ -117,15 +117,7 @@
}
} // namespace
-class NetlinkClientTest : public ::testing::Test {
- void SetUp() {
- google::InstallFailureSignalHandler();
- }
- protected:
- std::unique_ptr<NetlinkClient> nl_client_;
-};
-
-TEST_F(NetlinkClientTest, BasicStringNode) {
+TEST(NetlinkClientTest, BasicStringNode) {
constexpr uint16_t kDummyTag = 0xfce2;
constexpr char kLongString[] = "long string";
@@ -143,7 +135,7 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, BasicIntNode) {
+TEST(NetlinkClientTest, BasicIntNode) {
// Basic { Dummy: Value } test.
constexpr uint16_t kDummyTag = 0xfce2;
constexpr int32_t kValue = 0x1badd00d;
@@ -159,7 +151,7 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, SingleList) {
+TEST(NetlinkClientTest, SingleList) {
// List: { Dummy: Value}
constexpr uint16_t kDummyTag = 0xfce2;
constexpr uint16_t kListTag = 0xcafe;
@@ -181,7 +173,7 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, NestedList) {
+TEST(NetlinkClientTest, NestedList) {
// List1: { List2: { Dummy: Value}}
constexpr uint16_t kDummyTag = 0xfce2;
constexpr uint16_t kList1Tag = 0xcafe;
@@ -208,7 +200,7 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, ListSequence) {
+TEST(NetlinkClientTest, ListSequence) {
// List1: { Dummy1: Value1}, List2: { Dummy2: Value2 }
constexpr uint16_t kDummy1Tag = 0xfce2;
constexpr uint16_t kDummy2Tag = 0xfd38;
@@ -241,7 +233,7 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, ComplexList) {
+TEST(NetlinkClientTest, ComplexList) {
// List1: { List2: { Dummy1: Value1 }, Dummy2: Value2 }
constexpr uint16_t kDummy1Tag = 0xfce2;
constexpr uint16_t kDummy2Tag = 0xfd38;
@@ -274,14 +266,14 @@
EXPECT_THAT(request, RequestDataIs(&expected, sizeof(expected)));
}
-TEST_F(NetlinkClientTest, SimpleNetlinkCreateHeader) {
+TEST(NetlinkClientTest, SimpleNetlinkCreateHeader) {
cvd::NetlinkRequest request(RTM_NEWLINK, NLM_F_CREATE | NLM_F_EXCL);
constexpr char kValue[] = "random string";
request.AddString(0, kValue); // Have something to work with.
constexpr size_t kMsgLength =
sizeof(nlmsghdr) + sizeof(nlattr) + RTA_ALIGN(sizeof(kValue));
- int base_seq = request.SeqNo();
+ uint32_t base_seq = request.SeqNo();
EXPECT_THAT(request, RequestHeaderIs(
kMsgLength,
@@ -298,14 +290,14 @@
base_seq + 1));
}
-TEST_F(NetlinkClientTest, SimpleNetlinkUpdateHeader) {
+TEST(NetlinkClientTest, SimpleNetlinkUpdateHeader) {
cvd::NetlinkRequest request(RTM_SETLINK, 0);
constexpr char kValue[] = "random string";
request.AddString(0, kValue); // Have something to work with.
constexpr size_t kMsgLength =
sizeof(nlmsghdr) + sizeof(nlattr) + RTA_ALIGN(sizeof(kValue));
- int base_seq = request.SeqNo();
+ uint32_t base_seq = request.SeqNo();
EXPECT_THAT(request, RequestHeaderIs(
kMsgLength, RTM_SETLINK, NLM_F_REQUEST | NLM_F_ACK, base_seq));