Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0d6118f7 authored by Tomasz Wasilczyk's avatar Tomasz Wasilczyk Committed by Android (Google) Code Review
Browse files

Merge "Test ITuner::setConfiguration against bad input."

parents b5bec3d2 10877cd2
Loading
Loading
Loading
Loading
+32 −0
Original line number Original line Diff line number Diff line
@@ -416,6 +416,38 @@ TEST_F(BroadcastRadioHidlTest, SetAndGetConfiguration) {
    EXPECT_EQ(mHalProperties.bands[1], halConfig);
    EXPECT_EQ(mHalProperties.bands[1], halConfig);
}
}


/**
 * Test ITuner::setConfiguration() with invalid arguments.
 *
 * Verifies that:
 *  - the methods returns INVALID_ARGUMENTS on invalid arguments
 *  - the method recovers and succeeds after passing correct arguments
 */
TEST_F(BroadcastRadioHidlTest, SetConfigurationFails) {
    ASSERT_EQ(true, openTuner());

    // Let's define a config that's bad for sure.
    BandConfig badConfig = {};
    badConfig.type = Band::FM;
    badConfig.lowerLimit = 0xFFFFFFFF;
    badConfig.upperLimit = 0;
    badConfig.spacings = (std::vector<uint32_t>){ 0 };

    // Test setConfiguration failing on bad data.
    mCallbackCalled = false;
    auto setResult = mTuner->setConfiguration(badConfig);
    EXPECT_TRUE(setResult.isOk());
    EXPECT_EQ(Result::INVALID_ARGUMENTS, setResult);

    // Test setConfiguration recovering after passing good data.
    mCallbackCalled = false;
    setResult = mTuner->setConfiguration(mHalProperties.bands[0]);
    EXPECT_TRUE(setResult.isOk());
    EXPECT_EQ(Result::OK, setResult);
    EXPECT_EQ(true, waitForCallback(kConfigCallbacktimeoutNs));
    EXPECT_EQ(Result::OK, mResultCallbackData);
}

/**
/**
 * Test ITuner::scan
 * Test ITuner::scan
 *
 *