Skip to content

Commit 01ec23c

Browse files
authored
refactor dbsystems tests (#305)
1 parent 16a8edf commit 01ec23c

File tree

6 files changed

+129
-123
lines changed

6 files changed

+129
-123
lines changed

data_source_obmcs_database_databases_test.go

Lines changed: 62 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,67 @@ import (
1111
"github.com/stretchr/testify/suite"
1212
)
1313

14-
type DatabaseDatabasesTestSuite struct {
14+
type DatasourceDatabaseDBSystemTestSuite struct {
1515
suite.Suite
1616
Client *baremetal.Client
1717
Config string
1818
Provider terraform.ResourceProvider
1919
Providers map[string]terraform.ResourceProvider
2020
}
2121

22-
func (s *DatabaseDatabasesTestSuite) SetupTest() {
22+
func (s *DatasourceDatabaseDBSystemTestSuite) SetupTest() {
2323
s.Client = testAccClient
2424
s.Provider = testAccProvider
2525
s.Providers = testAccProviders
26-
s.Config = databaseConfig
26+
s.Config = testProviderConfig() + `
27+
data "oci_identity_availability_domains" "ADs" {
28+
compartment_id = "${var.compartment_id}"
29+
}
2730
28-
s.Config += testProviderConfig()
31+
resource "oci_core_virtual_network" "t" {
32+
compartment_id = "${var.compartment_id}"
33+
cidr_block = "10.0.0.0/16"
34+
display_name = "-tf-vcn"
35+
}
36+
37+
resource "oci_core_subnet" "t" {
38+
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
39+
cidr_block = "10.0.1.0/24"
40+
display_name = "-tf-subnet"
41+
compartment_id = "${var.compartment_id}"
42+
vcn_id = "${oci_core_virtual_network.t.id}"
43+
route_table_id = "${oci_core_virtual_network.t.default_route_table_id}"
44+
dhcp_options_id = "${oci_core_virtual_network.t.default_dhcp_options_id}"
45+
security_list_ids = ["${oci_core_virtual_network.t.default_security_list_id}"]
46+
}
47+
48+
resource "oci_database_db_system" "t" {
49+
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
50+
compartment_id = "${var.compartment_id}"
51+
subnet_id = "${oci_core_subnet.t.id}"
52+
database_edition = "ENTERPRISE_EDITION"
53+
disk_redundancy = "NORMAL"
54+
shape = "BM.DenseIO1.36"
55+
cpu_core_count = "2"
56+
ssh_public_keys = ["ssh-rsa KKKLK3NzaC1yc2EAAAADAQABAAABAQC+UC9MFNA55NIVtKPIBCNw7++ACXhD0hx+Zyj25JfHykjz/QU3Q5FAU3DxDbVXyubgXfb/GJnrKRY8O4QDdvnZZRvQFFEOaApThAmCAM5MuFUIHdFvlqP+0W+ZQnmtDhwVe2NCfcmOrMuaPEgOKO3DOW6I/qOOdO691Xe2S9NgT9HhN0ZfFtEODVgvYulgXuCCXsJs+NUqcHAOxxFUmwkbPvYi0P0e2DT8JKeiOOC8VKUEgvVx+GKmqasm+Y6zHFW7vv3g2GstE1aRs3mttHRoC/JPM86PRyIxeWXEMzyG5wHqUu4XZpDbnWNxi6ugxnAGiL3CrIFdCgRNgHz5qS1l MustWin"]
57+
display_name = "-tf-db-system"
58+
domain = "mycompany.com"
59+
hostname = "myOracleDB"
60+
db_home {
61+
db_version = "12.1.0.2"
62+
display_name = "-tf-db-home"
63+
database {
64+
"admin_password" = "BEstrO0ng_#11"
65+
"db_name" = "aTFdb"
66+
character_set = "AL32UTF8"
67+
ncharacter_set = "AL16UTF16"
68+
}
69+
}
70+
}`
2971
}
3072

31-
func (s *DatabaseDatabasesTestSuite) TestReadDatabases() {
32-
resource.UnitTest(s.T(), resource.TestCase{
73+
func (s *DatasourceDatabaseDBSystemTestSuite) TestAccDatasourceDatabaseDBSystem_basic() {
74+
resource.Test(s.T(), resource.TestCase{
3375
PreventPostDestroyRefresh: true,
3476
Providers: s.Providers,
3577
Steps: []resource.TestStep{
@@ -41,38 +83,36 @@ func (s *DatabaseDatabasesTestSuite) TestReadDatabases() {
4183
{
4284
Config: s.Config + `
4385
data "oci_database_db_systems" "t" {
44-
compartment_id = "${var.compartment_id}"
86+
compartment_id = "${var.compartment_id}"
4587
}
4688
data "oci_database_db_homes" "t" {
47-
compartment_id = "${var.compartment_id}"
48-
db_system_id = "${oci_database_db_system.t.id}"
89+
compartment_id = "${var.compartment_id}"
90+
db_system_id = "${oci_database_db_system.t.id}"
4991
}
50-
data "oci_database_databases" "t" {
51-
compartment_id = "${var.compartment_id}"
52-
db_home_id = "${data.oci_database_db_homes.t.id}"
92+
data "oci_database_databases" "t" {
93+
compartment_id = "${var.compartment_id}"
94+
db_home_id = "${data.oci_database_db_homes.t.id}"
5395
}
5496
data "oci_database_database" "t" {
55-
database_id = "${data.oci_database_databases.t.databases.0.id}"
97+
database_id = "${data.oci_database_databases.t.databases.0.id}"
5698
}
57-
data "oci_database_db_nodes" "t" {
58-
compartment_id = "${var.compartment_id}"
59-
db_system_id = "${oci_database_db_system.t.id}"
60-
}
61-
`,
99+
data "oci_database_db_nodes" "t" {
100+
compartment_id = "${var.compartment_id}"
101+
db_system_id = "${oci_database_db_system.t.id}"
102+
}`,
62103
Check: resource.ComposeTestCheckFunc(
63-
64104
resource.TestCheckResourceAttrSet("data.oci_database_db_systems.t", "db_systems.#"),
65105
resource.TestCheckResourceAttrSet("data.oci_database_db_homes.t", "db_homes.#"),
66106
resource.TestCheckResourceAttrSet("data.oci_database_databases.t", "databases.#"),
67-
resource.TestCheckResourceAttrSet("data.oci_database_db_nodes.t", "db_nodes.#"),
68107
resource.TestCheckResourceAttrSet("data.oci_database_database.t", "id"),
108+
resource.TestCheckResourceAttrSet("data.oci_database_db_nodes.t", "db_nodes.#"),
69109
),
70110
},
71111
},
72112
},
73113
)
74114
}
75115

76-
func TestDatabaseDatabasesTestSuite(t *testing.T) {
77-
suite.Run(t, new(DatabaseDatabasesTestSuite))
116+
func TestDatasourceDatabaseDBSystemTestSuite(t *testing.T) {
117+
suite.Run(t, new(DatasourceDatabaseDBSystemTestSuite))
78118
}

data_source_obmcs_database_db_system_shape_test.go

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,19 @@ func (s *DatabaseDBSystemShapeTestSuite) SetupTest() {
2424
s.Client = testAccClient
2525
s.Provider = testAccProvider
2626
s.Providers = testAccProviders
27-
s.Config = `
28-
data "oci_identity_availability_domains" "ADs" {
29-
compartment_id = "${var.compartment_id}"
30-
}
31-
data "oci_database_db_system_shapes" "t" {
32-
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
33-
compartment_id = "${var.compartment_id}"
34-
}
35-
`
36-
s.Config += testProviderConfig()
27+
s.Config = testProviderConfig() + `
28+
data "oci_identity_availability_domains" "ADs" {
29+
compartment_id = "${var.compartment_id}"
30+
}
31+
data "oci_database_db_system_shapes" "t" {
32+
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
33+
compartment_id = "${var.compartment_id}"
34+
}`
3735
s.ResourceName = "data.oci_database_db_system_shapes.t"
3836
}
3937

40-
func (s *DatabaseDBSystemShapeTestSuite) TestReadDBSystemShapes() {
41-
resource.UnitTest(s.T(), resource.TestCase{
38+
func (s *DatabaseDBSystemShapeTestSuite) TestAccDatasourceDatabaseDBSystemShape_basic() {
39+
resource.Test(s.T(), resource.TestCase{
4240
PreventPostDestroyRefresh: true,
4341
Providers: s.Providers,
4442
Steps: []resource.TestStep{
@@ -56,6 +54,6 @@ func (s *DatabaseDBSystemShapeTestSuite) TestReadDBSystemShapes() {
5654
)
5755
}
5856

59-
func TestDatabaseDBSystemShapeTestSuite(t *testing.T) {
57+
func TestDatasourceDatabaseDBSystemShapeTestSuite(t *testing.T) {
6058
suite.Run(t, new(DatabaseDBSystemShapeTestSuite))
6159
}

data_source_obmcs_database_db_version_test.go

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,15 @@ func (s *DatabaseDBVersionTestSuite) SetupTest() {
2525
s.Client = testAccClient
2626
s.Provider = testAccProvider
2727
s.Providers = testAccProviders
28-
s.Config = `
29-
data "oci_database_db_versions" "t" {
30-
compartment_id = "${var.compartment_id}"
31-
}
32-
`
33-
s.Config += testProviderConfig()
28+
s.Config = testProviderConfig() + `
29+
data "oci_database_db_versions" "t" {
30+
compartment_id = "${var.compartment_id}"
31+
}`
3432
s.ResourceName = "data.oci_database_db_versions.t"
3533
}
3634

37-
func (s *DatabaseDBVersionTestSuite) TestReadDBVersions() {
38-
39-
resource.UnitTest(s.T(), resource.TestCase{
35+
func (s *DatabaseDBVersionTestSuite) TestAccDatasourceDatabaseDBVersion_basic() {
36+
resource.Test(s.T(), resource.TestCase{
4037
PreventPostDestroyRefresh: true,
4138
Providers: s.Providers,
4239
Steps: []resource.TestStep{
@@ -45,7 +42,6 @@ func (s *DatabaseDBVersionTestSuite) TestReadDBVersions() {
4542
ImportStateVerify: true,
4643
Config: s.Config,
4744
Check: resource.ComposeTestCheckFunc(
48-
4945
resource.TestCheckResourceAttrSet(s.ResourceName, "db_versions.0.version"),
5046
resource.TestCheckResourceAttrSet(s.ResourceName, "db_versions.1.version"),
5147
),
@@ -55,6 +51,6 @@ func (s *DatabaseDBVersionTestSuite) TestReadDBVersions() {
5551
)
5652
}
5753

58-
func TestDatabaseDBVersionTestSuite(t *testing.T) {
54+
func TestDatasourceDatabaseDBVersionTestSuite(t *testing.T) {
5955
suite.Run(t, new(DatabaseDBVersionTestSuite))
6056
}

docs/resources/database/db_system.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ The following arguments are supported:
7272
The following arguments are supported:
7373

7474
* `admin_password` - (Required) A strong password for SYS, SYSTEM, and PDB Admin.
75-
* `db_name` - (Required) The database name.
75+
* `db_name` - (Required) The database name (alphanumeric only).
7676

7777
## Attributes Reference
7878

provider_test.go

Lines changed: 0 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -172,73 +172,6 @@ resource "oci_core_instance" "t" {
172172
}
173173
`
174174

175-
var databaseConfig = subnetConfig + `
176-
variable "DBNodeShape" {
177-
default = "BM.DenseIO1.36"
178-
}
179-
180-
variable "CPUCoreCount" {
181-
default = "2"
182-
}
183-
184-
variable "DBEdition" {
185-
default = "ENTERPRISE_EDITION"
186-
}
187-
188-
variable "DBAdminPassword" {
189-
default = "BEstrO0ng_#11"
190-
}
191-
192-
variable "DBName" {
193-
default = "aTFdb"
194-
}
195-
196-
variable "DBVersion" {
197-
default = "12.1.0.2"
198-
}
199-
200-
201-
variable "DBDiskRedundancy" {
202-
default = "HIGH"
203-
}
204-
205-
variable "DBNodeDisplayName" {
206-
default = "MyTFDatabaseNode0"
207-
}
208-
209-
variable "DBNodeDomainName" {
210-
default = "mycompany.com"
211-
}
212-
213-
variable "DBNodeHostName" {
214-
default = "myOracleDB"
215-
}
216-
217-
resource "oci_database_db_system" "t" {
218-
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
219-
compartment_id = "${var.compartment_id}"
220-
cpu_core_count = "${var.CPUCoreCount}"
221-
database_edition = "${var.DBEdition}"
222-
db_home {
223-
database {
224-
"admin_password" = "${var.DBAdminPassword}"
225-
"db_name" = "${var.DBName}"
226-
character_set = "AL32UTF8"
227-
ncharacter_set = "AL16UTF16"
228-
}
229-
db_version = "${var.DBVersion}"
230-
display_name = "MyTFDB"
231-
}
232-
disk_redundancy = "NORMAL"
233-
shape = "${var.DBNodeShape}"
234-
subnet_id = "${oci_core_subnet.WebSubnetAD1.id}"
235-
ssh_public_keys = ["${var.ssh_public_key}"]
236-
display_name = "MyTFDatabaseNode0"
237-
domain = "${var.DBNodeDomainName}"
238-
hostname = "${var.DBNodeHostName}"
239-
}
240-
`
241-
242175
func GetTestProvider() *OracleClients {
243176
r := &schema.Resource{
244177
Schema: schemaMap(),

resource_obmcs_database_db_system_test.go

Lines changed: 48 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,63 @@ type ResourceDatabaseDBSystemTestSuite struct {
1818
Providers map[string]terraform.ResourceProvider
1919
Config string
2020
ResourceName string
21-
Res *baremetal.DBSystem
2221
}
2322

2423
func (s *ResourceDatabaseDBSystemTestSuite) SetupTest() {
2524
s.Client = testAccClient
2625
s.Provider = testAccProvider
2726
s.Providers = testAccProviders
27+
s.Config = testProviderConfig() + `
2828
29-
s.Config = databaseConfig
30-
31-
s.Config += testProviderConfig()
29+
data "oci_identity_availability_domains" "ADs" {
30+
compartment_id = "${var.compartment_id}"
31+
}
32+
33+
resource "oci_core_virtual_network" "t" {
34+
compartment_id = "${var.compartment_id}"
35+
cidr_block = "10.0.0.0/16"
36+
display_name = "-tf-vcn"
37+
}
3238
39+
resource "oci_core_subnet" "t" {
40+
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
41+
cidr_block = "10.0.1.0/24"
42+
display_name = "-tf-subnet"
43+
compartment_id = "${var.compartment_id}"
44+
vcn_id = "${oci_core_virtual_network.t.id}"
45+
route_table_id = "${oci_core_virtual_network.t.default_route_table_id}"
46+
dhcp_options_id = "${oci_core_virtual_network.t.default_dhcp_options_id}"
47+
security_list_ids = ["${oci_core_virtual_network.t.default_security_list_id}"]
48+
}
49+
50+
resource "oci_database_db_system" "t" {
51+
availability_domain = "${data.oci_identity_availability_domains.ADs.availability_domains.0.name}"
52+
compartment_id = "${var.compartment_id}"
53+
subnet_id = "${oci_core_subnet.t.id}"
54+
database_edition = "ENTERPRISE_EDITION"
55+
disk_redundancy = "NORMAL"
56+
shape = "BM.DenseIO1.36"
57+
cpu_core_count = "2"
58+
ssh_public_keys = ["ssh-rsa KKKLK3NzaC1yc2EAAAADAQABAAABAQC+UC9MFNA55NIVtKPIBCNw7++ACXhD0hx+Zyj25JfHykjz/QU3Q5FAU3DxDbVXyubgXfb/GJnrKRY8O4QDdvnZZRvQFFEOaApThAmCAM5MuFUIHdFvlqP+0W+ZQnmtDhwVe2NCfcmOrMuaPEgOKO3DOW6I/qOOdO691Xe2S9NgT9HhN0ZfFtEODVgvYulgXuCCXsJs+NUqcHAOxxFUmwkbPvYi0P0e2DT8JKeiOOC8VKUEgvVx+GKmqasm+Y6zHFW7vv3g2GstE1aRs3mttHRoC/JPM86PRyIxeWXEMzyG5wHqUu4XZpDbnWNxi6ugxnAGiL3CrIFdCgRNgHz5qS1l MustWin"]
59+
display_name = "-tf-db-system"
60+
domain = "mycompany.com"
61+
hostname = "myOracleDB"
62+
db_home {
63+
db_version = "12.1.0.2"
64+
display_name = "-tf-db-home"
65+
database {
66+
"admin_password" = "BEstrO0ng_#11"
67+
"db_name" = "aTFdb"
68+
character_set = "AL32UTF8"
69+
ncharacter_set = "AL16UTF16"
70+
}
71+
}
72+
}`
3373
s.ResourceName = "oci_database_db_system.t"
3474
}
3575

36-
func (s *ResourceDatabaseDBSystemTestSuite) TestCreateResourceDatabaseDBSystem() {
37-
resource.UnitTest(s.T(), resource.TestCase{
76+
func (s *ResourceDatabaseDBSystemTestSuite) TestAccResourceDatabaseDBSystem() {
77+
resource.Test(s.T(), resource.TestCase{
3878
Providers: s.Providers,
3979
Steps: []resource.TestStep{
4080
{
@@ -43,10 +83,9 @@ func (s *ResourceDatabaseDBSystemTestSuite) TestCreateResourceDatabaseDBSystem()
4383
Config: s.Config,
4484
Check: resource.ComposeTestCheckFunc(
4585
resource.TestCheckResourceAttrSet(s.ResourceName, "id"),
46-
47-
resource.TestCheckResourceAttr(s.ResourceName, "display_name", "MyTFDatabaseNode0"),
48-
resource.TestCheckResourceAttr(s.ResourceName, "state", baremetal.ResourceAvailable),
4986
resource.TestCheckResourceAttrSet(s.ResourceName, "time_created"),
87+
resource.TestCheckResourceAttr(s.ResourceName, "display_name", "-tf-db-system"),
88+
resource.TestCheckResourceAttr(s.ResourceName, "state", baremetal.ResourceAvailable),
5089
),
5190
},
5291
},

0 commit comments

Comments
 (0)