Added tags field to required structures

This commit is contained in:
bpopovschi 2019-09-13 17:49:21 +03:00
parent 90c7f4a6a2
commit de35f03350
2 changed files with 32 additions and 16 deletions

View File

@ -86,6 +86,7 @@ type Database struct {
MaintenanceWindow *DatabaseMaintenanceWindow `json:"maintenance_window,omitempty"`
CreatedAt time.Time `json:"created_at,omitempty"`
PrivateNetworkUUID string `json:"private_network_uuid,omitempty"`
Tags []string `json:"tags,omitempty"`
}
// DatabaseConnection represents a database connection
@ -123,13 +124,14 @@ type DatabaseBackup struct {
// DatabaseCreateRequest represents a request to create a database cluster
type DatabaseCreateRequest struct {
Name string `json:"name,omitempty"`
EngineSlug string `json:"engine,omitempty"`
Version string `json:"version,omitempty"`
SizeSlug string `json:"size,omitempty"`
Region string `json:"region,omitempty"`
NumNodes int `json:"num_nodes,omitempty"`
PrivateNetworkUUID string `json:"private_network_uuid"`
Name string `json:"name,omitempty"`
EngineSlug string `json:"engine,omitempty"`
Version string `json:"version,omitempty"`
SizeSlug string `json:"size,omitempty"`
Region string `json:"region,omitempty"`
NumNodes int `json:"num_nodes,omitempty"`
PrivateNetworkUUID string `json:"private_network_uuid"`
Tags []string `json:"tags,omitempty"`
}
// DatabaseResizeRequest can be used to initiate a database resize operation.
@ -167,6 +169,7 @@ type DatabaseReplica struct {
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
PrivateNetworkUUID string `json:"private_network_uuid,omitempty"`
Tags []string `json:"tags,omitempty"`
}
// DatabasePool represents a database connection pool
@ -201,10 +204,11 @@ type DatabaseCreateDBRequest struct {
// DatabaseCreateReplicaRequest is used to create a new read-only replica
type DatabaseCreateReplicaRequest struct {
Name string `json:"name"`
Region string `json:"region"`
Size string `json:"size"`
PrivateNetworkUUID string `json:"private_network_uuid"`
Name string `json:"name"`
Region string `json:"region"`
Size string `json:"size"`
PrivateNetworkUUID string `json:"private_network_uuid"`
Tags []string `json:"tags,omitempty"`
}
type databaseUserRoot struct {

View File

@ -57,6 +57,7 @@ var db = Database{
},
SizeSlug: "db-s-2vcpu-4gb",
PrivateNetworkUUID: "da4e0206-d019-41d7-b51f-deadbeefbb8f",
Tags: []string{"production", "staging"},
}
var dbJSON = `
@ -104,7 +105,8 @@ var dbJSON = `
"description": null
},
"size": "db-s-2vcpu-4gb",
"private_network_uuid": "da4e0206-d019-41d7-b51f-deadbeefbb8f"
"private_network_uuid": "da4e0206-d019-41d7-b51f-deadbeefbb8f",
"tags": ["production", "staging"]
}
`
@ -193,6 +195,7 @@ func TestDatabases_Create(t *testing.T) {
CreatedAt: time.Date(2019, 2, 26, 6, 12, 39, 0, time.UTC),
MaintenanceWindow: nil,
SizeSlug: "db-s-2vcpu-4gb",
Tags: []string{"production", "staging"},
}
createRequest := &DatabaseCreateRequest{
@ -202,6 +205,7 @@ func TestDatabases_Create(t *testing.T) {
Region: "nyc3",
SizeSlug: "db-s-2vcpu-4gb",
NumNodes: 2,
Tags: []string{"production", "staging"},
}
body := `
@ -236,7 +240,8 @@ func TestDatabases_Create(t *testing.T) {
"status": "creating",
"created_at": "2019-02-26T06:12:39Z",
"maintenance_window": null,
"size": "db-s-2vcpu-4gb"
"size": "db-s-2vcpu-4gb",
"tags": ["production", "staging"]
}
}`
@ -918,6 +923,7 @@ func TestDatabases_GetReplica(t *testing.T) {
Database: "db",
},
PrivateNetworkUUID: "deadbeef-dead-4aa5-beef-deadbeef347d",
Tags: []string{"production", "staging"},
}
body := `
@ -945,7 +951,8 @@ func TestDatabases_GetReplica(t *testing.T) {
"database": "db",
"ssl": true
},
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d"
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d",
"tags": ["production", "staging"]
}
}
`
@ -994,6 +1001,7 @@ func TestDatabases_ListReplicas(t *testing.T) {
Database: "db",
},
PrivateNetworkUUID: "deadbeef-dead-4aa5-beef-deadbeef347d",
Tags: []string{"production", "staging"},
},
}
@ -1022,7 +1030,8 @@ func TestDatabases_ListReplicas(t *testing.T) {
"database": "db",
"ssl": true
},
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d"
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d",
"tags": ["production", "staging"]
}]
}
`
@ -1070,6 +1079,7 @@ func TestDatabases_CreateReplica(t *testing.T) {
Database: "db",
},
PrivateNetworkUUID: "deadbeef-dead-4aa5-beef-deadbeef347d",
Tags: []string{"production", "staging"},
}
body := `
@ -1097,7 +1107,8 @@ func TestDatabases_CreateReplica(t *testing.T) {
"database": "db",
"ssl": true
},
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d"
"private_network_uuid": "deadbeef-dead-4aa5-beef-deadbeef347d",
"tags": ["production", "staging"]
}
}
`
@ -1113,6 +1124,7 @@ func TestDatabases_CreateReplica(t *testing.T) {
Region: "nyc1",
Size: "db-s-2vcpu-4gb",
PrivateNetworkUUID: privateNetworkUUID,
Tags: []string{"production", "staging"},
})
require.NoError(t, err)
require.Equal(t, want, got)