Documentation ¶
Overview ¶
Package spantest implements creation/destruction of a temporary Spanner database.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SanitizeDBName ¶
SanitizeDBName tranforms name to a valid one. If name is already valid, returns it without changes.
Types ¶
type TempDB ¶
type TempDB struct { Name string // contains filtered or unexported fields }
TempDB is a temporary Spanner database.
func NewTempDB ¶
func NewTempDB(ctx context.Context, cfg TempDBConfig) (*TempDB, error)
NewTempDB creates a temporary database with a random name. The caller is responsible for calling Drop on the returned TempDB to cleanup resources after usage.
type TempDBConfig ¶
type TempDBConfig struct { // InstanceName is the name of Spannner instance where to create the // temporary database. // Format: projects/{project}/instances/{instance}. // Defaults to chromeinfra.TestSpannerInstance. InstanceName string // Credentials will be used to authenticate to Spanner. // If nil, auth.Authenticator with SilentLogin and chrome-infra auth options // will be used. // This means that that the user may have to login with luci-auth tool. Credentials credentials.PerRPCCredentials // InitScriptPath is a path to a DDL script to initialize the database. // // In lieu of a proper DDL parser, it is parsed using regexes. // Therefore the script MUST: // - Use `#“ and/or `--“ for comments. No block comments. // - Separate DDL statements with `;\n`. // // If empty, the database is created with no tables. InitScriptPath string }
TempDBConfig specifies how to create a temporary database.
Click to show internal directories.
Click to hide internal directories.