Skip to content

Commit

Permalink
backupccl: split out separate test utils package
Browse files Browse the repository at this point in the history
And add a test that ensures that cockroach doesn't import randgen.

Release note: None
  • Loading branch information
jordanlewis committed Dec 12, 2022
1 parent aae18c7 commit 183f5d5
Show file tree
Hide file tree
Showing 14 changed files with 62 additions and 40 deletions.
2 changes: 2 additions & 0 deletions pkg/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -684,6 +684,7 @@ GO_TARGETS = [
"//pkg/ccl/backupccl/backuprand:backuprand_test",
"//pkg/ccl/backupccl/backupresolver:backupresolver",
"//pkg/ccl/backupccl/backupresolver:backupresolver_test",
"//pkg/ccl/backupccl/backuptestutils:backuptestutils",
"//pkg/ccl/backupccl/backuputils:backuputils",
"//pkg/ccl/backupccl:backupccl",
"//pkg/ccl/backupccl:backupccl_test",
Expand Down Expand Up @@ -2219,6 +2220,7 @@ GET_X_DATA_TARGETS = [
"//pkg/ccl/backupccl/backuppb:get_x_data",
"//pkg/ccl/backupccl/backuprand:get_x_data",
"//pkg/ccl/backupccl/backupresolver:get_x_data",
"//pkg/ccl/backupccl/backuptestutils:get_x_data",
"//pkg/ccl/backupccl/backuputils:get_x_data",
"//pkg/ccl/baseccl:get_x_data",
"//pkg/ccl/benchccl/rttanalysisccl:get_x_data",
Expand Down
2 changes: 1 addition & 1 deletion pkg/ccl/backupccl/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ go_test(
"//pkg/ccl/backupccl/backupencryption",
"//pkg/ccl/backupccl/backupinfo",
"//pkg/ccl/backupccl/backuppb",
"//pkg/ccl/backupccl/backuputils",
"//pkg/ccl/backupccl/backuptestutils",
"//pkg/ccl/kvccl",
"//pkg/ccl/multiregionccl",
"//pkg/ccl/multiregionccl/multiregionccltestutils",
Expand Down
6 changes: 3 additions & 3 deletions pkg/ccl/backupccl/backup_metadata_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import (
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupencryption"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupinfo"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuppb"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
"github.com/cockroachdb/cockroach/pkg/cloud"
"github.com/cockroachdb/cockroach/pkg/roachpb"
"github.com/cockroachdb/cockroach/pkg/security/username"
Expand All @@ -43,8 +43,8 @@ func TestMetadataSST(t *testing.T) {
ctx := context.Background()
const numAccounts = 1
userfile := "userfile:///0"
tc, sqlDB, _, cleanupFn := backuputils.BackupRestoreTestSetup(t, backuputils.SingleNode, numAccounts,
backuputils.InitManualReplication)
tc, sqlDB, _, cleanupFn := backuptestutils.BackupRestoreTestSetup(t, backuptestutils.SingleNode, numAccounts,
backuptestutils.InitManualReplication)
defer cleanupFn()

sqlDB.Exec(t, `SET CLUSTER SETTING kv.bulkio.write_metadata_sst.enabled = true`)
Expand Down
6 changes: 3 additions & 3 deletions pkg/ccl/backupccl/backup_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ import (
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupencryption"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupinfo"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuppb"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
_ "github.com/cockroachdb/cockroach/pkg/ccl/kvccl"
_ "github.com/cockroachdb/cockroach/pkg/ccl/multiregionccl"
_ "github.com/cockroachdb/cockroach/pkg/ccl/multitenantccl"
Expand Down Expand Up @@ -135,7 +135,7 @@ func TestBackupRestoreStatementResult(t *testing.T) {
_, sqlDB, dir, cleanupFn := backupRestoreTestSetup(t, singleNode, numAccounts, InitManualReplication)
defer cleanupFn()

if err := backuputils.VerifyBackupRestoreStatementResult(
if err := backuptestutils.VerifyBackupRestoreStatementResult(
t, sqlDB, "BACKUP DATABASE data TO $1", localFoo,
); err != nil {
t.Fatal(err)
Expand All @@ -154,7 +154,7 @@ func TestBackupRestoreStatementResult(t *testing.T) {

sqlDB.Exec(t, "CREATE DATABASE data2")

if err := backuputils.VerifyBackupRestoreStatementResult(
if err := backuptestutils.VerifyBackupRestoreStatementResult(
t, sqlDB, "RESTORE data.* FROM $1 WITH OPTIONS (into_db='data2')", localFoo,
); err != nil {
t.Fatal(err)
Expand Down
1 change: 1 addition & 0 deletions pkg/ccl/backupccl/backupdest/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ go_test(
":backupdest",
"//pkg/ccl",
"//pkg/ccl/backupccl/backupbase",
"//pkg/ccl/backupccl/backuptestutils",
"//pkg/ccl/backupccl/backuputils",
"//pkg/cloud",
"//pkg/cloud/impl:cloudimpl",
Expand Down
5 changes: 3 additions & 2 deletions pkg/ccl/backupccl/backupdest/backup_destination_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import (

"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupbase"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupdest"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/cloud"
_ "github.com/cockroachdb/cockroach/pkg/cloud/impl" // register cloud storage providers
Expand All @@ -37,8 +38,8 @@ func TestBackupRestoreResolveDestination(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

tc, _, _, cleanupFn := backuputils.BackupDestinationTestSetup(t, backuputils.MultiNode, 1,
backuputils.InitManualReplication)
tc, _, _, cleanupFn := backuptestutils.BackupDestinationTestSetup(t, backuptestutils.MultiNode, 1,
backuptestutils.InitManualReplication)
defer cleanupFn()

ctx := context.Background()
Expand Down
2 changes: 1 addition & 1 deletion pkg/ccl/backupccl/backuprand/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ go_test(
deps = [
"//pkg/base",
"//pkg/ccl",
"//pkg/ccl/backupccl/backuputils",
"//pkg/ccl/backupccl/backuptestutils",
"//pkg/ccl/storageccl",
"//pkg/internal/sqlsmith",
"//pkg/security/securityassets",
Expand Down
10 changes: 5 additions & 5 deletions pkg/ccl/backupccl/backuprand/backup_rand_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import (

"github.com/cockroachdb/cockroach/pkg/base"
_ "github.com/cockroachdb/cockroach/pkg/ccl"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
"github.com/cockroachdb/cockroach/pkg/internal/sqlsmith"
"github.com/cockroachdb/cockroach/pkg/sql/randgen"
"github.com/cockroachdb/cockroach/pkg/testutils"
Expand Down Expand Up @@ -104,12 +104,12 @@ database_name = 'rand' AND schema_name = 'public'`)
dbBackup := localFoo + "wholedb"
tablesBackup := localFoo + "alltables"
dbBackups := []string{dbBackup, tablesBackup}
if err := backuputils.VerifyBackupRestoreStatementResult(
if err := backuptestutils.VerifyBackupRestoreStatementResult(
t, sqlDB, "BACKUP DATABASE rand INTO $1", dbBackup,
); err != nil {
t.Fatal(err)
}
if err := backuputils.VerifyBackupRestoreStatementResult(
if err := backuptestutils.VerifyBackupRestoreStatementResult(
t, sqlDB, "BACKUP TABLE rand.* INTO $1", tablesBackup,
); err != nil {
t.Fatal(err)
Expand Down Expand Up @@ -142,7 +142,7 @@ database_name = 'rand' AND schema_name = 'public'`)
sqlDB.Exec(t, "DROP DATABASE IF EXISTS restoredb")
sqlDB.Exec(t, "CREATE DATABASE restoredb")
tableQuery := fmt.Sprintf("RESTORE rand.* FROM LATEST IN $1 WITH OPTIONS (into_db='restoredb'%s)", runSchemaOnlyExtension)
if err := backuputils.VerifyBackupRestoreStatementResult(
if err := backuptestutils.VerifyBackupRestoreStatementResult(
t, sqlDB, tableQuery, backup,
); err != nil {
t.Fatal(err)
Expand All @@ -151,7 +151,7 @@ database_name = 'rand' AND schema_name = 'public'`)
sqlDB.Exec(t, "DROP DATABASE IF EXISTS restoredb")

dbQuery := fmt.Sprintf("RESTORE DATABASE rand FROM LATEST IN $1 WITH OPTIONS (new_db_name='restoredb'%s)", runSchemaOnlyExtension)
if err := backuputils.VerifyBackupRestoreStatementResult(t, sqlDB, dbQuery, backup); err != nil {
if err := backuptestutils.VerifyBackupRestoreStatementResult(t, sqlDB, dbQuery, backup); err != nil {
t.Fatal(err)
}
verifyTables(t, tableNames)
Expand Down
25 changes: 25 additions & 0 deletions pkg/ccl/backupccl/backuptestutils/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
load("//build/bazelutil/unused_checker:unused.bzl", "get_x_data")
load("@io_bazel_rules_go//go:def.bzl", "go_library")

go_library(
name = "backuptestutils",
testonly = 1,
srcs = ["testutils.go"],
importpath = "github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils",
visibility = ["//visibility:public"],
deps = [
"//pkg/base",
"//pkg/ccl/backupccl/backupbase",
"//pkg/testutils",
"//pkg/testutils/sqlutils",
"//pkg/testutils/testcluster",
"//pkg/workload/bank",
"//pkg/workload/workloadsql",
"@com_github_cockroachdb_errors//:errors",
"@com_github_cockroachdb_logtags//:logtags",
"@com_github_kr_pretty//:pretty",
"@com_github_stretchr_testify//require",
],
)

get_x_data(name = "get_x_data")
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
//
// https://github.com/cockroachdb/cockroach/blob/master/licenses/CCL.txt

package backuputils
package backuptestutils

import (
"context"
Expand Down
20 changes: 2 additions & 18 deletions pkg/ccl/backupccl/backuputils/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,10 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library")

go_library(
name = "backuputils",
srcs = [
"testutils.go",
"utils.go",
],
srcs = ["utils.go"],
importpath = "github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils",
visibility = ["//visibility:public"],
deps = [
"//pkg/base",
"//pkg/ccl/backupccl/backupbase",
"//pkg/cloud",
"//pkg/testutils",
"//pkg/testutils/sqlutils",
"//pkg/testutils/testcluster",
"//pkg/workload/bank",
"//pkg/workload/workloadsql",
"@com_github_cockroachdb_errors//:errors",
"@com_github_cockroachdb_logtags//:logtags",
"@com_github_kr_pretty//:pretty",
"@com_github_stretchr_testify//require",
],
deps = ["//pkg/cloud"],
)

get_x_data(name = "get_x_data")
4 changes: 2 additions & 2 deletions pkg/ccl/backupccl/datadriven_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (
"time"

"github.com/cockroachdb/cockroach/pkg/base"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
"github.com/cockroachdb/cockroach/pkg/clusterversion"
"github.com/cockroachdb/cockroach/pkg/jobs"
"github.com/cockroachdb/cockroach/pkg/jobs/jobspb"
Expand Down Expand Up @@ -118,7 +118,7 @@ func (d *datadrivenTestState) cleanup(ctx context.Context, t *testing.T) {
// them manually to ensure all queries finish on tests that share these
// resources.
for _, db := range d.sqlDBs {
backuputils.CheckForInvalidDescriptors(t, db)
backuptestutils.CheckForInvalidDescriptors(t, db)
db.Close()
}
for _, s := range d.firstNode {
Expand Down
8 changes: 4 additions & 4 deletions pkg/ccl/backupccl/utils_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ import (
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupbase"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backupinfo"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuppb"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuputils"
"github.com/cockroachdb/cockroach/pkg/ccl/backupccl/backuptestutils"
"github.com/cockroachdb/cockroach/pkg/keys"
"github.com/cockroachdb/cockroach/pkg/kv"
"github.com/cockroachdb/cockroach/pkg/kv/kvserver"
Expand Down Expand Up @@ -126,7 +126,7 @@ func backupRestoreTestSetupWithParams(
}

cleanupFn := func() {
backuputils.CheckForInvalidDescriptors(t, tc.Conns[0])
backuptestutils.CheckForInvalidDescriptors(t, tc.Conns[0])
tc.Stopper().Stop(ctx) // cleans up in memory storage's auxiliary dirs
dirCleanupFn() // cleans up dir, which is the nodelocal:// storage
}
Expand Down Expand Up @@ -185,7 +185,7 @@ func backupRestoreTestSetupEmptyWithParams(
sqlDB = sqlutils.MakeSQLRunner(tc.Conns[0])

cleanupFn := func() {
backuputils.CheckForInvalidDescriptors(t, tc.Conns[0])
backuptestutils.CheckForInvalidDescriptors(t, tc.Conns[0])
tc.Stopper().Stop(ctx) // cleans up in memory storage's auxiliary dirs
}

Expand All @@ -208,7 +208,7 @@ func createEmptyCluster(
sqlDB = sqlutils.MakeSQLRunner(tc.Conns[0])

cleanupFn := func() {
backuputils.CheckForInvalidDescriptors(t, tc.Conns[0])
backuptestutils.CheckForInvalidDescriptors(t, tc.Conns[0])
tc.Stopper().Stop(ctx) // cleans up in memory storage's auxiliary dirs
dirCleanupFn() // cleans up dir, which is the nodelocal:// storage
}
Expand Down
9 changes: 9 additions & 0 deletions pkg/cmd/cockroach/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
load("//build/bazelutil/unused_checker:unused.bzl", "get_x_data")
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("//pkg/testutils/buildutil:buildutil.bzl", "disallowed_imports_test")

go_library(
name = "cockroach_lib",
Expand All @@ -14,6 +15,14 @@ go_library(
],
)

disallowed_imports_test(
"cockroach_lib",
[
"//pkg/sql/randgen",
],
)


go_binary(
name = "cockroach",
embed = [":cockroach_lib"],
Expand Down

0 comments on commit 183f5d5

Please sign in to comment.