diff options
Diffstat (limited to 'radio/1.3/vts/functional/radio_hidl_hal_api.cpp')
-rw-r--r-- | radio/1.3/vts/functional/radio_hidl_hal_api.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/radio/1.3/vts/functional/radio_hidl_hal_api.cpp b/radio/1.3/vts/functional/radio_hidl_hal_api.cpp index 6208c677f..1bebae738 100644 --- a/radio/1.3/vts/functional/radio_hidl_hal_api.cpp +++ b/radio/1.3/vts/functional/radio_hidl_hal_api.cpp @@ -75,3 +75,36 @@ TEST_F(RadioHidlTest_v1_3, getModemStackStatus) { radioRsp_v1_3->rspInfo.error, {RadioError::NONE, RadioError::RADIO_NOT_AVAILABLE, RadioError::MODEM_ERR})); } + +/* + * Test IRadio.setSystemSelectionChannels() for the response returned. + */ +TEST_F(RadioHidlTest_v1_3, setSystemSelectionChannels) { + serial = GetRandomSerialNumber(); + + RadioAccessSpecifier specifier = {.radioAccessNetwork = RadioAccessNetworks::GERAN, + .geranBands = {GeranBands::BAND_450, GeranBands::BAND_480}, + .channels = {1, 2}}; + + Return<void> res = radio_v1_3->setSystemSelectionChannels(serial, true, {specifier}); + ASSERT_OK(res); + EXPECT_EQ(std::cv_status::no_timeout, wait()); + EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_3->rspInfo.type); + EXPECT_EQ(serial, radioRsp_v1_3->rspInfo.serial); + ALOGI("setSystemSelectionChannels, rspInfo.error = %s\n", + toString(radioRsp_v1_3->rspInfo.error).c_str()); + ASSERT_TRUE(CheckAnyOfErrors( + radioRsp_v1_3->rspInfo.error, + {RadioError::NONE, RadioError::RADIO_NOT_AVAILABLE, RadioError::INTERNAL_ERR})); + + if (radioRsp_v1_3->rspInfo.error == RadioError::NONE) { + Return<void> res = radio_v1_3->setSystemSelectionChannels(serial, false, {specifier}); + ASSERT_OK(res); + EXPECT_EQ(std::cv_status::no_timeout, wait()); + EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_3->rspInfo.type); + EXPECT_EQ(serial, radioRsp_v1_3->rspInfo.serial); + ALOGI("setSystemSelectionChannels, rspInfo.error = %s\n", + toString(radioRsp_v1_3->rspInfo.error).c_str()); + EXPECT_EQ(RadioError::NONE, radioRsp_v1_3->rspInfo.error); + } +}
\ No newline at end of file |