aconfig: update aconfig cpp integration tests
Note a new cc_test target aconfig.test.cpp.test_mode is added instead of reusing the old aconfig.test.cpp test target is becuase the test and production version codegen flag lib has symbol conflict, one should only link one at a a time. Bug: b/291068147 Test: atest aconfig.test.cpp/aconfig.test.cpp.test_mode Change-Id: Ifd52fd6eb7538fba90a13f0a6618a33a69b2358e
This commit is contained in:
79
tools/aconfig/tests/aconfig_test_test_variant.cpp
Normal file
79
tools/aconfig/tests/aconfig_test_test_variant.cpp
Normal file
@@ -0,0 +1,79 @@
|
||||
/*
|
||||
* Copyright (C) 2023 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 "com_android_aconfig_test.h"
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
using namespace com::android::aconfig::test;
|
||||
|
||||
TEST(AconfigTest, TestDisabledReadOnlyFlag) {
|
||||
ASSERT_FALSE(com_android_aconfig_test_disabled_ro());
|
||||
ASSERT_FALSE(provider_->disabled_ro());
|
||||
ASSERT_FALSE(disabled_ro());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, TestEnabledReadOnlyFlag) {
|
||||
// TODO: change to assertTrue(enabledRo()) when the build supports reading tests/*.values
|
||||
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
||||
ASSERT_FALSE(com_android_aconfig_test_enabled_ro());
|
||||
ASSERT_FALSE(provider_->enabled_ro());
|
||||
ASSERT_FALSE(enabled_ro());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, TestDisabledReadWriteFlag) {
|
||||
ASSERT_FALSE(com_android_aconfig_test_disabled_rw());
|
||||
ASSERT_FALSE(provider_->disabled_rw());
|
||||
ASSERT_FALSE(disabled_rw());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, TestEnabledReadWriteFlag) {
|
||||
// TODO: change to assertTrue(enabledRo()) when the build supports reading tests/*.values
|
||||
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
||||
ASSERT_FALSE(com_android_aconfig_test_enabled_rw());
|
||||
ASSERT_FALSE(provider_->enabled_rw());
|
||||
ASSERT_FALSE(enabled_rw());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, TestEnabledFixedReadOnlyFlag) {
|
||||
// TODO: change to assertTrue(enabledFixedRo()) when the build supports reading tests/*.values
|
||||
// (currently all flags are assigned the default READ_ONLY + DISABLED)
|
||||
ASSERT_FALSE(com_android_aconfig_test_enabled_fixed_ro());
|
||||
ASSERT_FALSE(provider_->enabled_fixed_ro());
|
||||
ASSERT_FALSE(enabled_fixed_ro());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, OverrideFlagValue) {
|
||||
ASSERT_FALSE(disabled_ro());
|
||||
disabled_ro(true);
|
||||
ASSERT_TRUE(disabled_ro());
|
||||
}
|
||||
|
||||
TEST(AconfigTest, ResetFlagValue) {
|
||||
ASSERT_FALSE(disabled_ro());
|
||||
ASSERT_FALSE(enabled_ro());
|
||||
disabled_ro(true);
|
||||
enabled_ro(true);
|
||||
ASSERT_TRUE(disabled_ro());
|
||||
ASSERT_TRUE(enabled_ro());
|
||||
reset_flags();
|
||||
ASSERT_FALSE(disabled_ro());
|
||||
ASSERT_FALSE(enabled_ro());
|
||||
}
|
||||
|
||||
int main(int argc, char** argv) {
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
Reference in New Issue
Block a user