mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
Merge "wifi(vts): Add framework for gtests"
This commit is contained in:
50
wifi/1.0/vts/functional/Android.bp
Normal file
50
wifi/1.0/vts/functional/Android.bp
Normal file
@@ -0,0 +1,50 @@
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
||||
cc_test {
|
||||
name: "wifi_hidl_test",
|
||||
gtest: true,
|
||||
srcs: [
|
||||
"main.cpp",
|
||||
"wifi_ap_iface_hidl_test.cpp",
|
||||
"wifi_chip_hidl_test.cpp",
|
||||
"wifi_hidl_test.cpp",
|
||||
"wifi_hidl_test_utils.cpp",
|
||||
"wifi_nan_iface_hidl_test.cpp",
|
||||
"wifi_p2p_iface_hidl_test.cpp",
|
||||
"wifi_rtt_controller_hidl_test.cpp",
|
||||
"wifi_sta_iface_hidl_test.cpp"],
|
||||
shared_libs: [
|
||||
"libbase",
|
||||
"liblog",
|
||||
"libcutils",
|
||||
"libhidlbase",
|
||||
"libhidltransport",
|
||||
"libhwbinder",
|
||||
"libnativehelper",
|
||||
"libutils",
|
||||
"android.hardware.wifi@1.0",
|
||||
],
|
||||
static_libs: ["libgtest"],
|
||||
cflags: [
|
||||
"--coverage",
|
||||
"-O0",
|
||||
"-g",
|
||||
],
|
||||
ldflags: [
|
||||
"--coverage"
|
||||
]
|
||||
}
|
||||
19
wifi/1.0/vts/functional/Android.mk
Normal file
19
wifi/1.0/vts/functional/Android.mk
Normal file
@@ -0,0 +1,19 @@
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(call all-subdir-makefiles)
|
||||
37
wifi/1.0/vts/functional/main.cpp
Normal file
37
wifi/1.0/vts/functional/main.cpp
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* 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 <android-base/logging.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
class WifiHidlEnvironment : public ::testing::Environment {
|
||||
public:
|
||||
virtual void SetUp() override { stopFramework(); }
|
||||
virtual void TearDown() override { startFramework(); }
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
int main(int argc, char** argv) {
|
||||
::testing::AddGlobalTestEnvironment(new WifiHidlEnvironment);
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
int status = RUN_ALL_TESTS();
|
||||
LOG(INFO) << "Test result = " << status;
|
||||
return status;
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_ap_iface_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_ap_iface_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiApIface.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiApIface;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all AP Iface HIDL interface tests.
|
||||
*/
|
||||
class WifiApIfaceHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiApIface proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiApIfaceHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiApIface().get());
|
||||
stopWifi();
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_chip_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_chip_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiChip.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiChip;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all Wifi chip HIDL interface tests.
|
||||
*/
|
||||
class WifiChipHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiChip proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiChipHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiChip().get());
|
||||
stopWifi();
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifi.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifi;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all root Wifi HIDL interface tests.
|
||||
*/
|
||||
class WifiHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifi proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifi().get());
|
||||
stopWifi();
|
||||
}
|
||||
278
wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp
Normal file
278
wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp
Normal file
@@ -0,0 +1,278 @@
|
||||
/*
|
||||
* 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 <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifi;
|
||||
using ::android::hardware::wifi::V1_0::IWifiApIface;
|
||||
using ::android::hardware::wifi::V1_0::IWifiChip;
|
||||
using ::android::hardware::wifi::V1_0::IWifiNanIface;
|
||||
using ::android::hardware::wifi::V1_0::IWifiP2pIface;
|
||||
using ::android::hardware::wifi::V1_0::IWifiRttController;
|
||||
using ::android::hardware::wifi::V1_0::IWifiStaIface;
|
||||
using ::android::hardware::wifi::V1_0::ChipModeId;
|
||||
using ::android::hardware::wifi::V1_0::ChipId;
|
||||
using ::android::hardware::wifi::V1_0::IfaceType;
|
||||
using ::android::hardware::wifi::V1_0::WifiStatus;
|
||||
using ::android::hardware::wifi::V1_0::WifiStatusCode;
|
||||
using ::android::sp;
|
||||
using ::android::hardware::hidl_string;
|
||||
using ::android::hardware::hidl_vec;
|
||||
|
||||
const char kWifiServiceName[] = "wifi";
|
||||
|
||||
void stopFramework() {
|
||||
ASSERT_EQ(std::system("svc wifi disable"), 0);
|
||||
sleep(5);
|
||||
}
|
||||
|
||||
void startFramework() { ASSERT_EQ(std::system("svc wifi enable"), 0); }
|
||||
|
||||
sp<IWifi> getWifi() {
|
||||
sp<IWifi> wifi = IWifi::getService(kWifiServiceName);
|
||||
return wifi;
|
||||
}
|
||||
|
||||
sp<IWifiChip> getWifiChip() {
|
||||
sp<IWifi> wifi = getWifi();
|
||||
if (!wifi.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
wifi->start([&](WifiStatus status) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
std::vector<ChipId> wifi_chip_ids;
|
||||
wifi->getChipIds(
|
||||
[&](const WifiStatus& status, const hidl_vec<ChipId>& chip_ids) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_chip_ids = chip_ids;
|
||||
});
|
||||
// We don't expect more than 1 chip currently.
|
||||
if (operation_failed || wifi_chip_ids.size() != 1) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
sp<IWifiChip> wifi_chip;
|
||||
wifi->getChip(wifi_chip_ids[0],
|
||||
[&](const WifiStatus& status, const sp<IWifiChip>& chip) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_chip = chip;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_chip;
|
||||
}
|
||||
|
||||
// Since we currently only support one iface of each type. Just iterate thru the
|
||||
// modes of operation and find the mode ID to use for that iface type.
|
||||
bool findModeToSupportIfaceType(IfaceType type,
|
||||
const std::vector<IWifiChip::ChipMode>& modes,
|
||||
ChipModeId* mode_id) {
|
||||
for (const auto& mode : modes) {
|
||||
std::vector<IWifiChip::ChipIfaceCombination> combinations =
|
||||
mode.availableCombinations;
|
||||
for (const auto& combination : combinations) {
|
||||
std::vector<IWifiChip::ChipIfaceCombinationLimit> iface_limits =
|
||||
combination.limits;
|
||||
for (const auto& iface_limit : iface_limits) {
|
||||
std::vector<IfaceType> iface_types = iface_limit.types;
|
||||
for (const auto& iface_type : iface_types) {
|
||||
if (iface_type == type) {
|
||||
*mode_id = mode.id;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool configureChipToSupportIfaceType(const sp<IWifiChip>& wifi_chip,
|
||||
IfaceType type) {
|
||||
bool operation_failed = false;
|
||||
std::vector<IWifiChip::ChipMode> chip_modes;
|
||||
wifi_chip->getAvailableModes(
|
||||
[&](WifiStatus status, const hidl_vec<IWifiChip::ChipMode>& modes) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
chip_modes = modes;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return false;
|
||||
}
|
||||
|
||||
ChipModeId mode_id;
|
||||
if (!findModeToSupportIfaceType(type, chip_modes, &mode_id)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
wifi_chip->configureChip(mode_id, [&](WifiStatus status) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
});
|
||||
if (operation_failed) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
sp<IWifiApIface> getWifiApIface() {
|
||||
sp<IWifiChip> wifi_chip = getWifiChip();
|
||||
if (!wifi_chip.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
if (!configureChipToSupportIfaceType(wifi_chip, IfaceType::AP)) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
sp<IWifiApIface> wifi_ap_iface;
|
||||
wifi_chip->createApIface(
|
||||
[&](const WifiStatus& status, const sp<IWifiApIface>& iface) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_ap_iface = iface;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_ap_iface;
|
||||
}
|
||||
|
||||
sp<IWifiNanIface> getWifiNanIface() {
|
||||
sp<IWifiChip> wifi_chip = getWifiChip();
|
||||
if (!wifi_chip.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
if (!configureChipToSupportIfaceType(wifi_chip, IfaceType::NAN)) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
sp<IWifiNanIface> wifi_nan_iface;
|
||||
wifi_chip->createNanIface(
|
||||
[&](const WifiStatus& status, const sp<IWifiNanIface>& iface) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_nan_iface = iface;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_nan_iface;
|
||||
}
|
||||
|
||||
sp<IWifiP2pIface> getWifiP2pIface() {
|
||||
sp<IWifiChip> wifi_chip = getWifiChip();
|
||||
if (!wifi_chip.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
if (!configureChipToSupportIfaceType(wifi_chip, IfaceType::P2P)) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
sp<IWifiP2pIface> wifi_p2p_iface;
|
||||
wifi_chip->createP2pIface(
|
||||
[&](const WifiStatus& status, const sp<IWifiP2pIface>& iface) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_p2p_iface = iface;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_p2p_iface;
|
||||
}
|
||||
|
||||
sp<IWifiStaIface> getWifiStaIface() {
|
||||
sp<IWifiChip> wifi_chip = getWifiChip();
|
||||
if (!wifi_chip.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
if (!configureChipToSupportIfaceType(wifi_chip, IfaceType::STA)) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
sp<IWifiStaIface> wifi_sta_iface;
|
||||
wifi_chip->createStaIface(
|
||||
[&](const WifiStatus& status, const sp<IWifiStaIface>& iface) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_sta_iface = iface;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_sta_iface;
|
||||
}
|
||||
|
||||
sp<IWifiRttController> getWifiRttController() {
|
||||
sp<IWifiChip> wifi_chip = getWifiChip();
|
||||
if (!wifi_chip.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
sp<IWifiStaIface> wifi_sta_iface = getWifiStaIface();
|
||||
if (!wifi_sta_iface.get()) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool operation_failed = false;
|
||||
sp<IWifiRttController> wifi_rtt_controller;
|
||||
wifi_chip->createRttController(
|
||||
wifi_sta_iface, [&](const WifiStatus& status,
|
||||
const sp<IWifiRttController>& controller) {
|
||||
if (status.code != WifiStatusCode::SUCCESS) {
|
||||
operation_failed = true;
|
||||
}
|
||||
wifi_rtt_controller = controller;
|
||||
});
|
||||
if (operation_failed) {
|
||||
return nullptr;
|
||||
}
|
||||
return wifi_rtt_controller;
|
||||
}
|
||||
|
||||
void stopWifi() {
|
||||
sp<IWifi> wifi = getWifi();
|
||||
ASSERT_NE(wifi, nullptr);
|
||||
wifi->stop([](const WifiStatus& status) {
|
||||
ASSERT_EQ(status.code, WifiStatusCode::SUCCESS);
|
||||
});
|
||||
}
|
||||
45
wifi/1.0/vts/functional/wifi_hidl_test_utils.h
Normal file
45
wifi/1.0/vts/functional/wifi_hidl_test_utils.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifi.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiApIface.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiChip.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiNanIface.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiP2pIface.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiRttController.h>
|
||||
#include <android/hardware/wifi/1.0/IWifiStaIface.h>
|
||||
|
||||
// Used to stop the android framework (wifi service) before every
|
||||
// test.
|
||||
void stopFramework();
|
||||
void startFramework();
|
||||
|
||||
// Helper functions to obtain references to the various HIDL interface objects.
|
||||
// Note: We only have a single instance of each of these objects currently.
|
||||
// These helper functions should be modified to return vectors if we support
|
||||
// multiple instances.
|
||||
android::sp<android::hardware::wifi::V1_0::IWifi> getWifi();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiChip> getWifiChip();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiApIface> getWifiApIface();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiNanIface> getWifiNanIface();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiP2pIface> getWifiP2pIface();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiStaIface> getWifiStaIface();
|
||||
android::sp<android::hardware::wifi::V1_0::IWifiRttController>
|
||||
getWifiRttController();
|
||||
// Used to trigger IWifi.stop() at the end of every test.
|
||||
void stopWifi();
|
||||
48
wifi/1.0/vts/functional/wifi_nan_iface_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_nan_iface_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* Copyright (C) 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Nanache 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiNanIface.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiNanIface;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all NAN Iface HIDL interface tests.
|
||||
*/
|
||||
class WifiNanIfaceHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiNanIface proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiNanIfaceHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiNanIface().get());
|
||||
stopWifi();
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_p2p_iface_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_p2p_iface_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* Copyright (C) 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the P2pache 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiP2pIface.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiP2pIface;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all P2P Iface HIDL interface tests.
|
||||
*/
|
||||
class WifiP2pIfaceHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiP2pIface proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiP2pIfaceHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiP2pIface().get());
|
||||
stopWifi();
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_rtt_controller_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_rtt_controller_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiRttController.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiRttController;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all RTT controller HIDL interface tests.
|
||||
*/
|
||||
class WifiRttControllerHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiRttController proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiRttControllerHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiRttController().get());
|
||||
stopWifi();
|
||||
}
|
||||
48
wifi/1.0/vts/functional/wifi_sta_iface_hidl_test.cpp
Normal file
48
wifi/1.0/vts/functional/wifi_sta_iface_hidl_test.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* Copyright (C) 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Staache 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 <android-base/logging.h>
|
||||
|
||||
#include <android/hardware/wifi/1.0/IWifiStaIface.h>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "wifi_hidl_test_utils.h"
|
||||
|
||||
using ::android::hardware::wifi::V1_0::IWifiStaIface;
|
||||
using ::android::sp;
|
||||
|
||||
/**
|
||||
* Fixture to use for all STA Iface HIDL interface tests.
|
||||
*/
|
||||
class WifiStaIfaceHidlTest : public ::testing::Test {
|
||||
public:
|
||||
virtual void SetUp() override {}
|
||||
|
||||
virtual void TearDown() override { stopWifi(); }
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
/*
|
||||
* Create:
|
||||
* Ensures that an instance of the IWifiStaIface proxy object is
|
||||
* successfully created.
|
||||
*/
|
||||
TEST(WifiStaIfaceHidlTestNoFixture, Create) {
|
||||
EXPECT_NE(nullptr, getWifiStaIface().get());
|
||||
stopWifi();
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
// This is an autogenerated file, do not edit.
|
||||
subdirs = [
|
||||
"1.0",
|
||||
"1.0/vts/functional",
|
||||
"supplicant/1.0",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user