From 0594eb4b153ce28873a5ee561b6b59155191c3bc Mon Sep 17 00:00:00 2001 From: junyulai Date: Tue, 10 Nov 2020 17:24:27 +0800 Subject: [PATCH] Add VTS tests for setDataWarningAndLimit HAL interface Test: atest VtsHalTetheroffloadControlV1_1TargetTest Bug: 149467454 Bug: 170699770 Bug: 170179169 Change-Id: I57542cf5fceff360b4a53b3b150941f286de4355 --- ...sHalTetheroffloadControlV1_1TargetTest.cpp | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/tetheroffload/control/1.1/vts/functional/VtsHalTetheroffloadControlV1_1TargetTest.cpp b/tetheroffload/control/1.1/vts/functional/VtsHalTetheroffloadControlV1_1TargetTest.cpp index d1616a42dc..b8c9e53121 100644 --- a/tetheroffload/control/1.1/vts/functional/VtsHalTetheroffloadControlV1_1TargetTest.cpp +++ b/tetheroffload/control/1.1/vts/functional/VtsHalTetheroffloadControlV1_1TargetTest.cpp @@ -21,6 +21,43 @@ using android::hardware::tetheroffload::control::V1_1::IOffloadControl; +const hidl_string TEST_IFACE("rmnet_data0"); + +// Check that calling setDataWarningAndLimit() without first having called initOffload() returns +// false. +TEST_P(OffloadControlTestV1_1_HalNotStarted, SetDataWarningAndLimitWithoutInitReturnsFalse) { + const Return ret = getControlV1_1()->setDataWarningAndLimit(TEST_IFACE, 5000ULL, 5000ULL, + ASSERT_FALSE_CALLBACK); + EXPECT_TRUE(ret.isOk()); +} + +/* + * Tests for IOffloadControl::setDataWarningAndLimit(). + */ + +// Test that setDataWarningAndLimit() for an empty interface name fails. +TEST_P(OffloadControlTestV1_1_HalStarted, SetDataWarningAndLimitEmptyUpstreamIfaceFails) { + const Return ret = getControlV1_1()->setDataWarningAndLimit( + hidl_string(""), 12345ULL, 67890ULL, ASSERT_FALSE_CALLBACK); + EXPECT_TRUE(ret.isOk()); +} + +// TEST_IFACE is presumed to exist on the device and be up. No packets +// are ever actually caused to be forwarded. +TEST_P(OffloadControlTestV1_1_HalStarted, SetDataWarningAndLimitNonZeroOk) { + const Return ret = getControlV1_1()->setDataWarningAndLimit(TEST_IFACE, 4000ULL, 5000ULL, + ASSERT_TRUE_CALLBACK); + EXPECT_TRUE(ret.isOk()); +} + +// TEST_IFACE is presumed to exist on the device and be up. No packets +// are ever actually caused to be forwarded. +TEST_P(OffloadControlTestV1_1_HalStarted, SetDataWarningAndLimitZeroOk) { + const Return ret = + getControlV1_1()->setDataWarningAndLimit(TEST_IFACE, 0ULL, 0ULL, ASSERT_TRUE_CALLBACK); + EXPECT_TRUE(ret.isOk()); +} + GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OffloadControlTestV1_1_HalNotStarted); GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OffloadControlTestV1_1_HalStarted);