Skip to content
This repository was archived by the owner on Dec 8, 2021. It is now read-only.

Commit 1a238f8

Browse files
author
Takashi Matsuo
authored
testing: disable Backup related integration tests (#1422)
* testing: disable Backup related integration tests Now the environment variable `RUN_SLOW_INTEGRATION_TESTS` indicates which slow integration tests to run. Example for running all the slow integration tests: ```sh RUN_INTEGRATION_TESTS=yes RUN_SLOW_INTEGRATION_TESTS=instance,backup \ ci/kokoro/docker/build.sh clang-tidy ``` Example for running slow integration tests for instance admin: ```sh RUN_INTEGRATION_TESTS=yes RUN_SLOW_INTEGRATION_TESTS=instance \ ci/kokoro/docker/build.sh clang-tidy ``` * fix macos bazel build
1 parent cd1c6d8 commit 1a238f8

File tree

7 files changed

+84
-79
lines changed

7 files changed

+84
-79
lines changed

ci/kokoro/docker/build.sh

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,6 @@ export CMAKE_SOURCE_DIR="."
2424

2525
in_docker_script="ci/kokoro/docker/build-in-docker-bazel.sh"
2626

27-
# Set it to "no" for any value other than "yes".
28-
if [[ "${RUN_SLOW_INTEGRATION_TESTS:-}" != "yes" ]]; then
29-
RUN_SLOW_INTEGRATION_TESTS="no"
30-
fi
31-
export RUN_SLOW_INTEGRATION_TESTS
32-
3327
if [[ $# -ge 1 ]]; then
3428
export BUILD_NAME="${1}"
3529
elif [[ -n "${KOKORO_JOB_NAME:-}" ]]; then
@@ -89,7 +83,10 @@ elif [[ "${BUILD_NAME}" = "coverage" ]]; then
8983
export DISTRO=fedora-install
9084
export DISTRO_VERSION=31
9185
: "${RUN_INTEGRATION_TESTS:=$DEFAULT_RUN_INTEGRATION_TESTS}"
92-
export RUN_SLOW_INTEGRATION_TESTS=yes
86+
if [[ -z "${RUN_SLOW_INTEGRATION_TESTS:-}" ]]; then
87+
# Defaults to "instance" for the coverage test.
88+
export RUN_SLOW_INTEGRATION_TESTS=instance
89+
fi
9390
in_docker_script="ci/kokoro/docker/build-in-docker-cmake.sh"
9491
elif [[ "${BUILD_NAME}" = "publish-refdocs" ]]; then
9592
export DISTRO=fedora-install

ci/kokoro/macos/build-bazel.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ if [[ ${RUN_INTEGRATION_TESTS} == "yes" ]]; then
8080
"${bazel_args[@]}" \
8181
"--spawn_strategy=local" \
8282
"--test_env=GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_APPLICATION_CREDENTIALS}" \
83-
"--test_env=RUN_SLOW_INTEGRATION_TESTS=${RUN_SLOW_INTEGRATION_TESTS}" \
83+
"--test_env=RUN_SLOW_INTEGRATION_TESTS=${RUN_SLOW_INTEGRATION_TESTS:-}" \
8484
"--test_env=GRPC_DEFAULT_SSL_ROOTS_FILE_PATH=${GRPC_DEFAULT_SSL_ROOTS_FILE_PATH}" \
8585
"--test_env=GOOGLE_CLOUD_PROJECT=${GOOGLE_CLOUD_PROJECT}" \
8686
"--test_env=GOOGLE_CLOUD_CPP_SPANNER_INSTANCE=${GOOGLE_CLOUD_CPP_SPANNER_INSTANCE}" \

ci/kokoro/macos/build.sh

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,6 @@ export BAZEL_CONFIG=""
2020
export RUN_INTEGRATION_TESTS="no"
2121
driver_script="ci/kokoro/macos/build-bazel.sh"
2222

23-
# Set it to "no" for any value other than "yes".
24-
if [[ "${RUN_SLOW_INTEGRATION_TESTS:-}" != "yes" ]]; then
25-
RUN_SLOW_INTEGRATION_TESTS="no"
26-
fi
2723
export RUN_SLOW_INTEGRATION_TESTS
2824

2925
if [[ $# -eq 1 ]]; then

google/cloud/spanner/integration_tests/backup_integration_test.cc

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include <gmock/gmock.h>
2828
#include <chrono>
2929
#include <regex>
30+
#include <string>
3031

3132
namespace google {
3233
namespace cloud {
@@ -44,19 +45,21 @@ class BackupTest : public testing::Test {
4445
google::cloud::internal::GetEnv("SPANNER_EMULATOR_HOST").has_value();
4546
project_id_ =
4647
google::cloud::internal::GetEnv("GOOGLE_CLOUD_PROJECT").value_or("");
47-
run_slow_integration_tests_ =
48-
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
49-
.value_or("");
5048
test_iam_service_account_ =
5149
google::cloud::internal::GetEnv("GOOGLE_CLOUD_CPP_SPANNER_IAM_TEST_SA")
5250
.value_or("");
51+
auto const run_slow_integration_tests =
52+
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
53+
.value_or("");
54+
run_slow_backup_tests_ =
55+
run_slow_integration_tests.find("backup") != std::string::npos;
5356
}
5457
InstanceAdminClient instance_admin_client_;
5558
DatabaseAdminClient database_admin_client_;
5659
bool emulator_;
5760
std::string project_id_;
58-
std::string run_slow_integration_tests_;
5961
std::string test_iam_service_account_;
62+
bool run_slow_backup_tests_;
6063
};
6164

6265
class BackupTestWithCleanup : public BackupTest {
@@ -66,7 +69,7 @@ class BackupTestWithCleanup : public BackupTest {
6669
instance_name_regex_ = std::regex(
6770
R"(projects/.+/instances/(temporary-instance-(\d{4}-\d{2}-\d{2})-.+))");
6871
instance_config_regex_ = std::regex(".*us-west.*");
69-
if (run_slow_integration_tests_ != "yes") {
72+
if (!run_slow_backup_tests_) {
7073
return;
7174
}
7275
// Deletes leaked temporary instances.
@@ -108,7 +111,7 @@ class BackupTestWithCleanup : public BackupTest {
108111

109112
/// @test Backup related integration tests.
110113
TEST_F(BackupTestWithCleanup, BackupTestSuite) {
111-
if (run_slow_integration_tests_ != "yes" || emulator_) {
114+
if (!run_slow_backup_tests_ || emulator_) {
112115
GTEST_SKIP();
113116
}
114117
#if !defined(__clang__) && defined(__GNUC__) && \

google/cloud/spanner/integration_tests/database_admin_integration_test.cc

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,6 @@ TEST(DatabaseAdminClient, DatabaseBasicCRUD) {
4848
.value_or("");
4949
ASSERT_TRUE(emulator || !test_iam_service_account.empty());
5050

51-
auto run_slow_integration_tests =
52-
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
53-
.value_or("");
5451
Instance const in(project_id, *instance_id);
5552

5653
std::string database_id = spanner_testing::RandomDatabaseName(generator);

google/cloud/spanner/integration_tests/instance_admin_integration_test.cc

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
#include <chrono>
2525
#include <ctime>
2626
#include <regex>
27+
#include <string>
2728

2829
namespace google {
2930
namespace cloud {
@@ -47,19 +48,21 @@ class InstanceAdminClientTest : public testing::Test {
4748
instance_id_ =
4849
google::cloud::internal::GetEnv("GOOGLE_CLOUD_CPP_SPANNER_INSTANCE")
4950
.value_or("");
50-
run_slow_integration_tests_ =
51-
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
52-
.value_or("");
5351
test_iam_service_account_ =
5452
google::cloud::internal::GetEnv("GOOGLE_CLOUD_CPP_SPANNER_IAM_TEST_SA")
5553
.value_or("");
54+
auto const run_slow_integration_tests =
55+
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
56+
.value_or("");
57+
run_slow_instance_tests_ =
58+
run_slow_integration_tests.find("instance") != std::string::npos;
5659
}
5760
InstanceAdminClient client_;
5861
bool emulator_;
5962
std::string project_id_;
6063
std::string instance_id_;
61-
std::string run_slow_integration_tests_;
6264
std::string test_iam_service_account_;
65+
bool run_slow_instance_tests_;
6366
};
6467

6568
class InstanceAdminClientTestWithCleanup : public InstanceAdminClientTest {
@@ -69,7 +72,7 @@ class InstanceAdminClientTestWithCleanup : public InstanceAdminClientTest {
6972
instance_name_regex_ = std::regex(
7073
R"(projects/.+/instances/(temporary-instance-(\d{4}-\d{2}-\d{2})-.+))");
7174
instance_config_regex_ = std::regex(".*us-west.*");
72-
if (run_slow_integration_tests_ != "yes") {
75+
if (!run_slow_instance_tests_) {
7376
return;
7477
}
7578
// Deletes leaked temporary instances.
@@ -136,7 +139,7 @@ TEST_F(InstanceAdminClientTest, InstanceReadOperations) {
136139

137140
/// @test Verify the basic CRUD operations for instances work.
138141
TEST_F(InstanceAdminClientTestWithCleanup, InstanceCRUDOperations) {
139-
if (run_slow_integration_tests_ != "yes") {
142+
if (!run_slow_instance_tests_) {
140143
GTEST_SKIP();
141144
}
142145
auto generator = google::cloud::internal::MakeDefaultPRNG();
@@ -227,7 +230,7 @@ TEST_F(InstanceAdminClientTest, InstanceIam) {
227230
ASSERT_STATUS_OK(actual_policy);
228231
EXPECT_FALSE(actual_policy->etag().empty());
229232

230-
if (run_slow_integration_tests_ == "yes") {
233+
if (run_slow_instance_tests_) {
231234
// Set the policy to the existing value of the policy. While this changes
232235
// nothing it tests all the code in the client library.
233236
auto updated_policy = client_.SetIamPolicy(in, *actual_policy);

google/cloud/spanner/samples/samples.cc

Lines changed: 60 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
#include <chrono>
3434
#include <regex>
3535
#include <sstream>
36+
#include <string>
3637
#include <tuple>
3738
#include <utility>
3839

@@ -2583,9 +2584,13 @@ int RunOneCommand(std::vector<std::string> argv) {
25832584
}
25842585

25852586
void RunAll(bool emulator) {
2586-
auto run_slow_integration_tests =
2587+
auto const run_slow_integration_tests =
25872588
google::cloud::internal::GetEnv("RUN_SLOW_INTEGRATION_TESTS")
25882589
.value_or("");
2590+
auto const run_slow_backup_tests =
2591+
run_slow_integration_tests.find("backup") != std::string::npos;
2592+
auto const run_slow_instance_tests =
2593+
run_slow_integration_tests.find("instance") != std::string::npos;
25892594
auto project_id =
25902595
google::cloud::internal::GetEnv("GOOGLE_CLOUD_PROJECT").value_or("");
25912596
if (project_id.empty()) {
@@ -2637,7 +2642,7 @@ void RunAll(bool emulator) {
26372642

26382643
google::cloud::spanner::DatabaseAdminClient database_admin_client;
26392644

2640-
if (run_slow_integration_tests == "yes") {
2645+
if (run_slow_instance_tests) {
26412646
std::string crud_instance_id =
26422647
google::cloud::spanner_testing::RandomInstanceName(generator);
26432648
std::cout << "\nRunning create-instance sample" << std::endl;
@@ -2655,55 +2660,59 @@ void RunAll(bool emulator) {
26552660
<< std::endl;
26562661
RemoveDatabaseReader(instance_admin_client, project_id, crud_instance_id,
26572662
"serviceAccount:" + test_iam_service_account);
2658-
std::string backup_id =
2659-
google::cloud::spanner_testing::RandomBackupName(generator);
2660-
2661-
std::cout << "\nRunning spanner_create_database sample" << std::endl;
2662-
CreateDatabase(database_admin_client, project_id, crud_instance_id,
2663-
database_id);
2664-
2665-
std::cout << "\nRunning spanner_create_backup sample" << std::endl;
2666-
CreateBackup(database_admin_client, project_id, crud_instance_id,
2667-
database_id, backup_id);
2668-
2669-
std::cout << "\nRunning spanner_get_backup sample" << std::endl;
2670-
GetBackup(database_admin_client, project_id, crud_instance_id, backup_id);
2671-
2672-
std::cout << "\nRunning spanner_update_backup sample" << std::endl;
2673-
UpdateBackup(database_admin_client, project_id, crud_instance_id,
2674-
backup_id);
2675-
2676-
std::string restore_database_id =
2677-
google::cloud::spanner_testing::RandomDatabaseName(generator);
2678-
2679-
std::cout << "\nRunning spanner_restore_database sample" << std::endl;
2680-
RestoreDatabase(database_admin_client, project_id, crud_instance_id,
2681-
restore_database_id, backup_id);
2682-
2683-
std::cout << "\nRunning spanner_drop_database sample" << std::endl;
2684-
DropDatabase(database_admin_client, project_id, crud_instance_id,
2685-
restore_database_id);
2686-
2687-
std::cout << "\nRunning spanner_delete_backup sample" << std::endl;
2688-
DeleteBackup(database_admin_client, project_id, crud_instance_id,
2689-
backup_id);
2690-
2691-
std::cout << "\nRunning spanner_cancel_backup_create sample" << std::endl;
2692-
CreateBackupAndCancel(database_admin_client, project_id, crud_instance_id,
2693-
database_id, backup_id);
2694-
2695-
std::cout << "\nRunning spanner_list_backup_operations sample"
2696-
<< std::endl;
2697-
ListBackupOperations(database_admin_client, project_id, crud_instance_id,
2698-
database_id);
2699-
2700-
std::cout << "\nRunning spanner_list_backups sample" << std::endl;
2701-
ListBackups(database_admin_client, project_id, crud_instance_id);
2702-
2703-
std::cout << "\nRunning spanner_list_database_operations sample"
2704-
<< std::endl;
2705-
ListDatabaseOperations(database_admin_client, project_id,
2706-
crud_instance_id);
2663+
if (run_slow_backup_tests) {
2664+
std::string backup_id =
2665+
google::cloud::spanner_testing::RandomBackupName(generator);
2666+
2667+
std::cout << "\nRunning spanner_create_database sample" << std::endl;
2668+
CreateDatabase(database_admin_client, project_id, crud_instance_id,
2669+
database_id);
2670+
2671+
std::cout << "\nRunning spanner_create_backup sample" << std::endl;
2672+
CreateBackup(database_admin_client, project_id, crud_instance_id,
2673+
database_id, backup_id);
2674+
2675+
std::cout << "\nRunning spanner_get_backup sample" << std::endl;
2676+
GetBackup(database_admin_client, project_id, crud_instance_id,
2677+
backup_id);
2678+
2679+
std::cout << "\nRunning spanner_update_backup sample" << std::endl;
2680+
UpdateBackup(database_admin_client, project_id, crud_instance_id,
2681+
backup_id);
2682+
2683+
std::string restore_database_id =
2684+
google::cloud::spanner_testing::RandomDatabaseName(generator);
2685+
2686+
std::cout << "\nRunning spanner_restore_database sample" << std::endl;
2687+
RestoreDatabase(database_admin_client, project_id, crud_instance_id,
2688+
restore_database_id, backup_id);
2689+
2690+
std::cout << "\nRunning spanner_drop_database sample" << std::endl;
2691+
DropDatabase(database_admin_client, project_id, crud_instance_id,
2692+
restore_database_id);
2693+
2694+
std::cout << "\nRunning spanner_delete_backup sample" << std::endl;
2695+
DeleteBackup(database_admin_client, project_id, crud_instance_id,
2696+
backup_id);
2697+
2698+
std::cout << "\nRunning spanner_cancel_backup_create sample"
2699+
<< std::endl;
2700+
CreateBackupAndCancel(database_admin_client, project_id,
2701+
crud_instance_id, database_id, backup_id);
2702+
2703+
std::cout << "\nRunning spanner_list_backup_operations sample"
2704+
<< std::endl;
2705+
ListBackupOperations(database_admin_client, project_id,
2706+
crud_instance_id, database_id);
2707+
2708+
std::cout << "\nRunning spanner_list_backups sample" << std::endl;
2709+
ListBackups(database_admin_client, project_id, crud_instance_id);
2710+
2711+
std::cout << "\nRunning spanner_list_database_operations sample"
2712+
<< std::endl;
2713+
ListDatabaseOperations(database_admin_client, project_id,
2714+
crud_instance_id);
2715+
}
27072716
}
27082717

27092718
std::cout << "\nRunning delete-instance sample" << std::endl;

0 commit comments

Comments
 (0)