Add VTS for get/setPreferredNetworkBitmap am: 8d6c1de16e
am: 101a6c28ff
Change-Id: I52f7a76027eff8a9c2c7f780dcab5294b1518fc3
diff --git a/radio/1.4/vts/functional/radio_hidl_hal_api.cpp b/radio/1.4/vts/functional/radio_hidl_hal_api.cpp
index c395df6..15a8acc 100644
--- a/radio/1.4/vts/functional/radio_hidl_hal_api.cpp
+++ b/radio/1.4/vts/functional/radio_hidl_hal_api.cpp
@@ -96,6 +96,56 @@
}
/*
+ * Test IRadio.getPreferredNetworkTypeBitmap() for the response returned.
+ */
+TEST_F(RadioHidlTest_v1_4, getPreferredNetworkTypeBitmap) {
+ serial = GetRandomSerialNumber();
+
+ Return<void> res = radio_v1_4->getPreferredNetworkTypeBitmap(serial);
+
+ ASSERT_OK(res);
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_4->rspInfo.type);
+ EXPECT_EQ(serial, radioRsp_v1_4->rspInfo.serial);
+ ALOGI("getPreferredNetworkTypeBitmap, rspInfo.error = %s\n",
+ toString(radioRsp_v1_4->rspInfo.error).c_str());
+ EXPECT_EQ(RadioError::NONE, radioRsp_v1_4->rspInfo.error);
+}
+
+TEST_F(RadioHidlTest_v1_4, setPreferredNetworkTypeBitmap) {
+ serial = GetRandomSerialNumber();
+ ::android::hardware::hidl_bitfield<::android::hardware::radio::V1_4::RadioAccessFamily>
+ network_type_bitmap{};
+
+ network_type_bitmap |= ::android::hardware::radio::V1_4::RadioAccessFamily::LTE;
+
+ Return<void> res = radio_v1_4->setPreferredNetworkTypeBitmap(serial, network_type_bitmap);
+
+ ASSERT_OK(res);
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_4->rspInfo.type);
+ EXPECT_EQ(serial, radioRsp_v1_4->rspInfo.serial);
+ ALOGI("setPreferredNetworkTypeBitmap, rspInfo.error = %s\n",
+ toString(radioRsp_v1_4->rspInfo.error).c_str());
+ EXPECT_EQ(RadioError::NONE, radioRsp_v1_4->rspInfo.error);
+ if (radioRsp_v1_4->rspInfo.error == RadioError::NONE) {
+ // give some time for modem to set the value.
+ sleep(3);
+ serial = GetRandomSerialNumber();
+ Return<void> res = radio_v1_4->getPreferredNetworkTypeBitmap(serial);
+
+ ASSERT_OK(res);
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_4->rspInfo.type);
+ EXPECT_EQ(serial, radioRsp_v1_4->rspInfo.serial);
+ ALOGI("getPreferredNetworkTypeBitmap, rspInfo.error = %s\n",
+ toString(radioRsp_v1_4->rspInfo.error).c_str());
+ EXPECT_EQ(RadioError::NONE, radioRsp_v1_4->rspInfo.error);
+ EXPECT_EQ(network_type_bitmap, radioRsp_v1_4->networkTypeBitmapResponse);
+ }
+}
+
+/*
* Test IRadio.startNetworkScan() for the response returned.
*/
TEST_F(RadioHidlTest_v1_4, startNetworkScan) {
diff --git a/radio/1.4/vts/functional/radio_hidl_hal_utils_v1_4.h b/radio/1.4/vts/functional/radio_hidl_hal_utils_v1_4.h
index b77814f..ed689c6 100644
--- a/radio/1.4/vts/functional/radio_hidl_hal_utils_v1_4.h
+++ b/radio/1.4/vts/functional/radio_hidl_hal_utils_v1_4.h
@@ -61,6 +61,9 @@
bool isModemEnabled;
bool enableModemResponseToggle;
+ ::android::hardware::hidl_bitfield<::android::hardware::radio::V1_4::RadioAccessFamily>
+ networkTypeBitmapResponse;
+
// Data
::android::hardware::radio::V1_4::DataRegStateResult dataRegResp;
diff --git a/radio/1.4/vts/functional/radio_response.cpp b/radio/1.4/vts/functional/radio_response.cpp
index 10ecead..6e9cd43 100644
--- a/radio/1.4/vts/functional/radio_response.cpp
+++ b/radio/1.4/vts/functional/radio_response.cpp
@@ -776,7 +776,6 @@
Return<void> RadioResponse_v1_4::enableModemResponse(const RadioResponseInfo& info) {
rspInfo = info;
- enableModemResponseToggle = !enableModemResponseToggle;
parent_v1_4.notify(info.serial);
return Void();
}
@@ -832,9 +831,9 @@
Return<void> RadioResponse_v1_4::getPreferredNetworkTypeBitmapResponse(
const RadioResponseInfo& info, const ::android::hardware::hidl_bitfield<
::android::hardware::radio::V1_4::RadioAccessFamily>
- /*networkTypeBitmap*/) {
+ networkTypeBitmap) {
rspInfo = info;
- // TODO: may need a new member for bitfield networkTypeBitmap.
+ networkTypeBitmapResponse = networkTypeBitmap;
parent_v1_4.notify(info.serial);
return Void();
}