Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 97ae9d35 authored by Dennis Shen's avatar Dennis Shen Committed by Gerrit Code Review
Browse files

Merge "aconfig: update aconfig cpp integration tests" into main

parents 7c607a0e 813267d1
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -154,6 +154,12 @@ cc_aconfig_library {
    aconfig_declarations: "aconfig.test.flags",
}

cc_aconfig_library {
    name: "aconfig_test_cpp_library_test_variant",
    aconfig_declarations: "aconfig.test.flags",
    mode: "test",
}

cc_test {
    name: "aconfig.test.cpp",
    srcs: [
@@ -168,6 +174,20 @@ cc_test {
    ],
}

cc_test {
    name: "aconfig.test.cpp.test_mode",
    srcs: [
        "tests/aconfig_test_test_variant.cpp",
    ],
    static_libs: [
        "aconfig_test_cpp_library_test_variant",
        "libgmock",
    ],
    shared_libs: [
        "server_configurable_flags",
    ],
}

rust_aconfig_library {
    name: "libaconfig_test_rust_library",
    crate_name: "aconfig_test_rust_library",
+18 −0
Original line number Diff line number Diff line
@@ -17,24 +17,42 @@
#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());
}

int main(int argc, char** argv) {
+79 −0
Original line number Diff line number Diff line
/*
 * 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();
}