From df7fa12b5f823de1137c0ea49132850350e93fe0 Mon Sep 17 00:00:00 2001 From: David Kagan Date: Thu, 6 Apr 2023 12:28:17 -0400 Subject: [PATCH] fixed tests further, hopefully --- dax/errors.go | 8 ++++++++ dax/test/dax/dax_test.go | 18 ++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/dax/errors.go b/dax/errors.go index d573ec41c..59ff869e3 100644 --- a/dax/errors.go +++ b/dax/errors.go @@ -13,6 +13,7 @@ const ( ErrDatabaseIDDoesNotExist errors.Code = "DatabaseIDDoesNotExist" ErrDatabaseNameDoesNotExist errors.Code = "DatabaseNameDoesNotExist" ErrDatabaseNameExists errors.Code = "DatabaseNameExists" + ErrDatabaseNameInvalid errors.Code = "DatabaseNameInvalid" ErrTableIDExists errors.Code = "TableIDExists" ErrTableKeyExists errors.Code = "TableKeyExists" @@ -39,6 +40,13 @@ func NewErrOrganizationIDDoesNotExist(orgID OrganizationID) error { ) } +func NewErrDatabaseNameInvalid(qdb QualifiedDatabase) error { + return errors.New( + ErrDatabaseNameInvalid, + fmt.Sprintf("invalid database name %s, must match [a-z][a-z0-9Θ_-]* and contain at most 300 characters", string(qdb.Name)), + ) +} + func NewErrDatabaseIDExists(qdbid QualifiedDatabaseID) error { return errors.New( ErrDatabaseIDExists, diff --git a/dax/test/dax/dax_test.go b/dax/test/dax/dax_test.go index 1e9d0d215..cfa1da94c 100644 --- a/dax/test/dax/dax_test.go +++ b/dax/test/dax/dax_test.go @@ -38,6 +38,7 @@ func TestDAXIntegration(t *testing.T) { dbID := dax.DatabaseID("db1") qdbid := dax.NewQualifiedDatabaseID(orgID, dbID) dbname := dax.DatabaseName("dbname1") + dbname2 := dax.DatabaseName("-dbname2") qdb := &dax.QualifiedDatabase{ OrganizationID: qdbid.OrganizationID, Database: dax.Database{ @@ -50,6 +51,18 @@ func TestDAXIntegration(t *testing.T) { }, } + qdb2 := &dax.QualifiedDatabase{ + OrganizationID: qdbid.OrganizationID, + Database: dax.Database{ + ID: qdbid.DatabaseID, + Name: dbname2, + Options: dax.DatabaseOptions{ + WorkersMin: 1, + WorkersMax: 1, + }, + }, + } + t.Run("ServiceStart", func(t *testing.T) { t.Run("AllServicesByDefault", func(t *testing.T) { // Run ManagedCommand with no options (just defaulting to one @@ -803,6 +816,11 @@ func TestDAXIntegration(t *testing.T) { assertCode(t, err, schemar.ErrCodeDatabaseNameInvalid) }) + t.Run("CreateDatabase with Invalid Name", func(t *testing.T) { + err := client.CreateDatabase(ctx, qdb2) + assertCode(t, err, dax.ErrDatabaseNameInvalid) + }) + t.Run("DropDatabase", func(t *testing.T) { err := client.DropDatabase(ctx, qdbid) assertCode(t, err, dax.ErrDatabaseIDDoesNotExist)