mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
Create VTS folder and put necessary setup code
This change contains minimal modifications to perform test for 1.1 HAL. Test cases that exercise 1.1 HAL will be provideded in follow-up patches. Test: atest VtsHalTetheroffloadControlV1_1TargetTest Bug: 149467454 Bug: 170699770 Bug: 170179169 Change-Id: I1df5b8d1241e9fd21930f0def395f98a8bbf3076
This commit is contained in:
@@ -30,3 +30,17 @@ cc_test {
|
||||
"vts",
|
||||
],
|
||||
}
|
||||
|
||||
cc_test_library {
|
||||
name: "VtsHalTetheroffloadControlV1_0TargetTest-lib",
|
||||
defaults: ["VtsHalTargetTestDefaults"],
|
||||
export_include_dirs: ["include"],
|
||||
static_libs: [
|
||||
"android.hardware.tetheroffload.config@1.0",
|
||||
"android.hardware.tetheroffload.control@1.0",
|
||||
],
|
||||
srcs: [
|
||||
"OffloadControlTestBase.cpp",
|
||||
"OffloadControlTestUtils.cpp",
|
||||
],
|
||||
}
|
||||
|
||||
@@ -36,7 +36,6 @@ using android::hardware::hidl_vec;
|
||||
using android::hardware::Return;
|
||||
using android::hardware::Void;
|
||||
using android::hardware::tetheroffload::config::V1_0::IOffloadConfig;
|
||||
using android::hardware::tetheroffload::control::V1_0::IOffloadControl;
|
||||
using android::hardware::tetheroffload::control::V1_0::ITetheringOffloadCallback;
|
||||
using android::hardware::tetheroffload::control::V1_0::NatTimeoutUpdate;
|
||||
using android::hardware::tetheroffload::control::V1_0::OffloadCallbackEvent;
|
||||
@@ -64,7 +63,8 @@ class OffloadControlTestBase : public testing::TestWithParam<std::tuple<std::str
|
||||
|
||||
// Called once in setup stage to retrieve correct version of
|
||||
// IOffloadControl object.
|
||||
virtual sp<IOffloadControl> createControl(const std::string& serviceName) = 0;
|
||||
virtual sp<android::hardware::tetheroffload::control::V1_0::IOffloadControl> createControl(
|
||||
const std::string& serviceName) = 0;
|
||||
|
||||
// The IOffloadConfig HAL is tested more thoroughly elsewhere. Here the
|
||||
// class just setup everything correctly and verify basic readiness.
|
||||
@@ -100,6 +100,6 @@ class OffloadControlTestBase : public testing::TestWithParam<std::tuple<std::str
|
||||
};
|
||||
|
||||
sp<IOffloadConfig> config;
|
||||
sp<IOffloadControl> control;
|
||||
sp<android::hardware::tetheroffload::control::V1_0::IOffloadControl> control;
|
||||
sp<TetheringOffloadCallback> control_cb;
|
||||
};
|
||||
@@ -26,8 +26,10 @@ class OffloadControlTestV1_0_HalNotStarted : public OffloadControlTestBase {
|
||||
prepareControlHal();
|
||||
}
|
||||
|
||||
virtual sp<IOffloadControl> createControl(const std::string& serviceName) override {
|
||||
return IOffloadControl::getService(serviceName);
|
||||
virtual sp<android::hardware::tetheroffload::control::V1_0::IOffloadControl> createControl(
|
||||
const std::string& serviceName) override {
|
||||
return android::hardware::tetheroffload::control::V1_0::IOffloadControl::getService(
|
||||
serviceName);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
30
tetheroffload/control/1.1/vts/functional/Android.bp
Normal file
30
tetheroffload/control/1.1/vts/functional/Android.bp
Normal file
@@ -0,0 +1,30 @@
|
||||
// Copyright (C) 2020 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: "VtsHalTetheroffloadControlV1_1TargetTest",
|
||||
defaults: ["VtsHalTargetTestDefaults"],
|
||||
srcs: ["VtsHalTetheroffloadControlV1_1TargetTest.cpp"],
|
||||
local_include_dirs: ["include"],
|
||||
static_libs: [
|
||||
"android.hardware.tetheroffload.config@1.0",
|
||||
"android.hardware.tetheroffload.control@1.0",
|
||||
"android.hardware.tetheroffload.control@1.1",
|
||||
"VtsHalTetheroffloadControlV1_0TargetTest-lib",
|
||||
],
|
||||
test_suites: [
|
||||
"general-tests",
|
||||
"vts",
|
||||
],
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Copyright (C) 2020 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 <OffloadControlTestV1_1.h>
|
||||
#include <gtest/gtest.h>
|
||||
#include <hidl/GtestPrinter.h>
|
||||
#include <hidl/ServiceManagement.h>
|
||||
|
||||
using android::hardware::tetheroffload::control::V1_1::IOffloadControl;
|
||||
|
||||
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OffloadControlTestV1_1_HalNotStarted);
|
||||
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OffloadControlTestV1_1_HalStarted);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
PerInstance, OffloadControlTestV1_1_HalNotStarted,
|
||||
testing::Combine(testing::ValuesIn(android::hardware::getAllHalInstanceNames(
|
||||
IOffloadConfig::descriptor)),
|
||||
testing::ValuesIn(android::hardware::getAllHalInstanceNames(
|
||||
IOffloadControl::descriptor))),
|
||||
android::hardware::PrintInstanceTupleNameToString<>);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
PerInstance, OffloadControlTestV1_1_HalStarted,
|
||||
testing::Combine(testing::ValuesIn(android::hardware::getAllHalInstanceNames(
|
||||
IOffloadConfig::descriptor)),
|
||||
testing::ValuesIn(android::hardware::getAllHalInstanceNames(
|
||||
IOffloadControl::descriptor))),
|
||||
android::hardware::PrintInstanceTupleNameToString<>);
|
||||
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright (C) 2020 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 <OffloadControlTestV1_0.h>
|
||||
#include <android/hardware/tetheroffload/control/1.1/IOffloadControl.h>
|
||||
|
||||
class OffloadControlTestV1_1_HalNotStarted : public OffloadControlTestV1_0_HalNotStarted {
|
||||
public:
|
||||
virtual sp<android::hardware::tetheroffload::control::V1_0::IOffloadControl> createControl(
|
||||
const std::string& serviceName) override {
|
||||
return android::hardware::tetheroffload::control::V1_1::IOffloadControl::getService(
|
||||
serviceName);
|
||||
}
|
||||
|
||||
sp<android::hardware::tetheroffload::control::V1_1::IOffloadControl> getControlV1_1() {
|
||||
// The cast is safe since only devices with V1.1+ HAL will be enumerated and pass in to the
|
||||
// test.
|
||||
return android::hardware::tetheroffload::control::V1_1::IOffloadControl::castFrom(control)
|
||||
.withDefault(nullptr);
|
||||
}
|
||||
};
|
||||
|
||||
class OffloadControlTestV1_1_HalStarted : public OffloadControlTestV1_1_HalNotStarted {
|
||||
public:
|
||||
virtual void SetUp() override {
|
||||
setupConfigHal();
|
||||
setupControlHal();
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user