import "go.chromium.org/luci/resultdb/internal/testutil"
const ( // IntegrationTestEnvVar is the name of the environment variable which controls // whether spanner tests are executed. // The value must be "1" for integration tests to run. IntegrationTestEnvVar = "INTEGRATION_TESTS" // RedisTestEnvVar is the name of the environment variable which controls // whether tests will attempt to connect to *local* Redis at port 6379. // The value must be "1" to connect to Redis. // // Note that this mode does not support running multiple test binaries in // parallel, e.g. `go test ./...`. // This could be mitigated by using different Redis databases in different // test binaries, but the default limit is only 16. RedisTestEnvVar = "INTEGRATION_TESTS_REDIS" )
CombineMutations concatenates mutations
ConnectToRedis returns true if tests should connect to Redis.
MustApply applies the mutations to the spanner client in the context. Asserts that application succeeds. Returns the commit timestamp.
func MustNotFindRow(ctx context.Context, table string, key spanner.Key, ptrMap map[string]interface{})
MustNotFindRow is a shortcut to do a single row read in a single transaction using the current client, and assert the row was not found.
func MustReadRow(ctx context.Context, table string, key spanner.Key, ptrMap map[string]interface{})
MustReadRow is a shortcut to do a single row read in a single transaction using the current client, and assert success.
SpannerTestContext returns a context for testing code that talks to Spanner. Skips the test if integration tests are not enabled.
Tests that use Spanner must not call t.Parallel().
SpannerTestMain is a test main function for packages that have tests that talk to spanner. It creates/destroys a temporary spanner database before/after running tests.
This function never returns. Instead it calls os.Exit with the value returned by m.Run().
TestingContext returns a context to be used in tests.
Path | Synopsis |
---|---|
insert | Package insert implements functions to insert rows for testing purposes. |
Package testutil imports 20 packages (graph). Updated 2021-01-18. Refresh now. Tools for package owners.