1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- /*
- * Copyright (C) 2016, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- #include <functional>
- #include <memory>
- #include <string>
- #include <vector>
- #include <gtest/gtest.h>
- #include "wificond/scanning/offload/offload_callback.h"
- #include "wificond/scanning/scan_result.h"
- #include "wificond/tests/mock_offload_callback_handlers.h"
- #include "wificond/tests/offload_test_utils.h"
- using android::hardware::wifi::offload::V1_0::ScanResult;
- using android::hardware::wifi::offload::V1_0::OffloadStatus;
- using android::hardware::wifi::offload::V1_0::OffloadStatusCode;
- using android::hardware::hidl_vec;
- using testing::NiceMock;
- namespace android {
- namespace wificond {
- class OffloadCallbackTest : public ::testing::Test {
- protected:
- virtual void SetUp() {
- dummy_scan_results_ = OffloadTestUtils::createOffloadScanResults();
- }
- void TearDown() override { dummy_scan_results_.clear(); }
- std::vector<ScanResult> dummy_scan_results_;
- std::unique_ptr<OffloadCallback> offload_callback_;
- std::unique_ptr<NiceMock<MockOffloadCallbackHandlers>> handlers_;
- };
- /**
- * Testing OffloadCallback to invoke the registered callback handler
- * with the scan results when they are available
- */
- TEST_F(OffloadCallbackTest, checkScanResultSize) {
- std::vector<ScanResult> scan_result;
- handlers_.reset(new NiceMock<MockOffloadCallbackHandlers>());
- ON_CALL(*handlers_, OnScanResultHandler(testing::_))
- .WillByDefault(testing::Invoke(
- [&scan_result](std::vector<ScanResult> scanResult) -> void {
- scan_result = scanResult;
- }));
- offload_callback_.reset(new OffloadCallback(handlers_.get()));
- hidl_vec<ScanResult> offloadScanResult(dummy_scan_results_);
- offload_callback_->onScanResult(offloadScanResult);
- EXPECT_EQ(dummy_scan_results_.size(), scan_result.size());
- }
- /**
- * Testing OffloadCallback to invoke the registered error handler
- */
- TEST_F(OffloadCallbackTest, checkErrorStatus) {
- OffloadStatus status_;
- handlers_.reset(new NiceMock<MockOffloadCallbackHandlers>());
- ON_CALL(*handlers_, OnErrorHandler(testing::_))
- .WillByDefault(testing::Invoke(
- [&status_](OffloadStatus status) -> void { status_ = status; }));
- offload_callback_.reset(new OffloadCallback(handlers_.get()));
- OffloadStatus status =
- OffloadTestUtils::createOffloadStatus(OffloadStatusCode::ERROR);
- offload_callback_->onError(status);
- EXPECT_EQ(status_.code, OffloadStatusCode::ERROR);
- }
- } // namespace wificond
- } // namespace android
|