Merge "aconfig: restructure integration tests" into main

This commit is contained in:
Treehugger Robot
2023-07-24 13:48:28 +00:00
committed by Gerrit Code Review
5 changed files with 78 additions and 42 deletions

View File

@@ -67,7 +67,7 @@ rust_test_host {
],
}
// integration tests: java
// integration tests: general
aconfig_declarations {
name: "aconfig.test.flags",
@@ -91,8 +91,10 @@ aconfig_value_set {
],
}
// integration tests: java
java_aconfig_library {
name: "aconfig_test_java",
name: "aconfig_test_java_library",
aconfig_declarations: "aconfig.test.flags",
}
@@ -104,9 +106,30 @@ android_test {
manifest: "tests/AndroidManifest.xml",
certificate: "platform",
static_libs: [
"aconfig_test_java_library",
"androidx.test.rules",
"testng",
"aconfig_test_java",
],
test_suites: ["device-tests"],
}
// integration tests: C++
cc_aconfig_library {
name: "aconfig_test_cpp_library",
aconfig_declarations: "aconfig.test.flags",
}
cc_test {
name: "aconfig.test.cpp",
srcs: [
"tests/aconfig_test.cpp",
],
static_libs: [
"aconfig_test_cpp_library",
"libgmock",
],
shared_libs: [
"server_configurable_flags",
],
}

View File

@@ -1,17 +0,0 @@
cc_aconfig_library {
name: "aconfig_test_cc_library",
aconfig_declarations: "aconfig.test.flags",
}
cc_binary {
name: "aconfig_hello_world_cc",
srcs: [
"aconfig_hello_world.cpp",
],
static_libs: [
"aconfig_test_cc_library",
],
shared_libs: [
"server_configurable_flags",
],
}

View File

@@ -1,22 +0,0 @@
/*
* 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 <stdio.h>
#include "com_android_aconfig_test.h"
int main() {
printf("hello flag %d\n", com_android_aconfig_test_disabled_rw());
}

View File

@@ -1,7 +1,12 @@
import static com.android.aconfig.test.Flags.FLAG_DISABLED_RO;
import static com.android.aconfig.test.Flags.FLAG_DISABLED_RW;
import static com.android.aconfig.test.Flags.FLAG_ENABLED_RO;
import static com.android.aconfig.test.Flags.FLAG_ENABLED_RW;
import static com.android.aconfig.test.Flags.disabledRo;
import static com.android.aconfig.test.Flags.disabledRw;
import static com.android.aconfig.test.Flags.enabledRo;
import static com.android.aconfig.test.Flags.enabledRw;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -13,11 +18,13 @@ import org.junit.runners.JUnit4;
public final class AconfigTest {
@Test
public void testDisabledReadOnlyFlag() {
assertEquals("com.android.aconfig.test.disabled_ro", FLAG_DISABLED_RO);
assertFalse(disabledRo());
}
@Test
public void testEnabledReadOnlyFlag() {
assertEquals("com.android.aconfig.test.disabled_rw", FLAG_DISABLED_RW);
// TODO: change to assertTrue(enabledRo()) when the build supports reading tests/*.values
// (currently all flags are assigned the default READ_ONLY + DISABLED)
assertFalse(enabledRo());
@@ -25,11 +32,13 @@ public final class AconfigTest {
@Test
public void testDisabledReadWriteFlag() {
assertEquals("com.android.aconfig.test.enabled_ro", FLAG_ENABLED_RO);
assertFalse(disabledRw());
}
@Test
public void testEnabledReadWriteFlag() {
assertEquals("com.android.aconfig.test.enabled_rw", FLAG_ENABLED_RW);
// TODO: change to assertTrue(enabledRw()) when the build supports reading tests/*.values
// (currently all flags are assigned the default READ_ONLY + DISABLED)
assertFalse(enabledRw());

View File

@@ -0,0 +1,43 @@
/*
* 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"
TEST(AconfigTest, TestDisabledReadOnlyFlag) {
ASSERT_FALSE(com_android_aconfig_test_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());
}
TEST(AconfigTest, TestDisabledReadWriteFlag) {
ASSERT_FALSE(com_android_aconfig_test_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());
}
int main(int argc, char** argv) {
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}