Skip to content

Commit 312f05a

Browse files
committed
Most of the core resources are tested. Encountering a timing problem with instance tests -- the construction of these tests takes longer than 10 minutes. We may have to have a combined instance test that checks a bunch of things.
1 parent 381f4ff commit 312f05a

18 files changed

+397
-198
lines changed

data_source_obmcs_core_instance_credential_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ func (s *ResourceCoreInstanceCredentialTestSuite) SetupTest() {
3434
s.Providers = map[string]terraform.ResourceProvider{
3535
"baremetal": s.Provider,
3636
}
37-
s.Config = `
37+
s.Config = instanceConfig + `
3838
data "baremetal_core_instance_credentials" "s" {
39-
instance_id = "instanceid"
39+
instance_id = "${baremetal_core_instance.t.id}"
4040
}
4141
`
4242
s.Config += testProviderConfig()

data_source_obmcs_core_virtual_network_test.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ func (s *ResourceCoreVirtualNetworksTestSuite) SetupTest() {
3535
"baremetal": s.Provider,
3636
}
3737
s.Config = `
38-
resource "baremetal_core_virtual_network" "t" {
39-
cidr_block = "10.0.0.0/16"
40-
compartment_id = "${var.compartment_id}"
41-
display_name = "display_name"
42-
}
43-
data "baremetal_core_virtual_networks" "t" {
44-
compartment_id = "${baremetal_core_virtual_network.t.compartment_id}"
45-
limit = 1
46-
}
38+
resource "baremetal_core_virtual_network" "t" {
39+
cidr_block = "10.0.0.0/16"
40+
compartment_id = "${var.compartment_id}"
41+
display_name = "display_name"
42+
}
43+
data "baremetal_core_virtual_networks" "t" {
44+
compartment_id = "${baremetal_core_virtual_network.t.compartment_id}"
45+
limit = 1
46+
}
4747
`
4848
s.Config += testProviderConfig()
4949
s.ResourceName = "data.baremetal_core_virtual_networks.t"

provider_test.go

Lines changed: 103 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,94 @@ func testProviderConfig() string {
3535
`
3636
}
3737

38+
var instanceConfig = `
39+
data "baremetal_identity_availability_domains" "ADs" {
40+
compartment_id = "${var.compartment_id}"
41+
}
42+
43+
data "baremetal_core_images" "images" {
44+
compartment_id = "${var.compartment_id}"
45+
}
46+
47+
resource "baremetal_core_virtual_network" "t" {
48+
cidr_block = "10.0.0.0/16"
49+
compartment_id = "${var.compartment_id}"
50+
display_name = "network_name"
51+
}
52+
53+
resource "baremetal_core_internet_gateway" "CompleteIG" {
54+
compartment_id = "${var.compartment_id}"
55+
display_name = "CompleteIG"
56+
vcn_id = "${baremetal_core_virtual_network.t.id}"
57+
}
58+
59+
resource "baremetal_core_route_table" "RouteForComplete" {
60+
compartment_id = "${var.compartment_id}"
61+
vcn_id = "${baremetal_core_virtual_network.t.id}"
62+
display_name = "RouteTableForComplete"
63+
route_rules {
64+
cidr_block = "0.0.0.0/0"
65+
network_entity_id = "${baremetal_core_internet_gateway.CompleteIG.id}"
66+
}
67+
}
68+
69+
resource "baremetal_core_security_list" "WebSubnet" {
70+
compartment_id = "${var.compartment_id}"
71+
display_name = "Public"
72+
vcn_id = "${baremetal_core_virtual_network.t.id}"
73+
egress_security_rules = [{
74+
destination = "0.0.0.0/0"
75+
protocol = "6"
76+
}]
77+
ingress_security_rules = [{
78+
tcp_options {
79+
"max" = 80
80+
"min" = 80
81+
}
82+
protocol = "6"
83+
source = "0.0.0.0/0"
84+
},
85+
{
86+
protocol = "6"
87+
source = "10.0.0.0/16"
88+
}]
89+
}
90+
91+
92+
resource "baremetal_core_subnet" "WebSubnetAD1" {
93+
availability_domain = "${lookup(data.baremetal_identity_availability_domains.ADs.availability_domains[0],"name")}"
94+
cidr_block = "10.0.0.0/16"
95+
display_name = "WebSubnetAD1"
96+
compartment_id = "${var.compartment_id}"
97+
vcn_id = "${baremetal_core_virtual_network.t.id}"
98+
route_table_id = "${baremetal_core_route_table.RouteForComplete.id}"
99+
security_list_ids = ["${baremetal_core_security_list.WebSubnet.id}"]
100+
}
101+
102+
data "baremetal_core_images" "t" {
103+
compartment_id = "${var.compartment_id}"
104+
limit = 1
105+
}
106+
107+
data "baremetal_core_shape" "shapes" {
108+
compartment_id = "${var.compartment_id}"
109+
availability_domain = "${data.baremetal_identity_availability_domains.ADs.availability_domains.0.name}"
110+
image_id = "${data.baremetal_core_images.t.images.0.id}"
111+
}
112+
113+
resource "baremetal_core_instance" "t" {
114+
availability_domain = "${data.baremetal_identity_availability_domains.ADs.availability_domains.0.name}"
115+
compartment_id = "${var.compartment_id}"
116+
display_name = "instance_name"
117+
image = "${data.baremetal_core_images.t.images.0.id}"
118+
shape = "${data.baremetal_core_shape.shapes.shapes.0.name}"
119+
subnet_id = "${baremetal_core_subnet.WebSubnetAD1.id}"
120+
metadata {
121+
ssh_authorized_keys = "ssh-rsa KKKLK3NzaC1yc2EAAAADAQABAAABAQC+UC9MFNA55NIVtKPIBCNw7++ACXhD0hx+Zyj25JfHykjz/QU3Q5FAU3DxDbVXyubgXfb/GJnrKRY8O4QDdvnZZRvQFFEOaApThAmCAM5MuFUIHdFvlqP+0W+ZQnmtDhwVe2NCfcmOrMuaPEgOKO3DOW6I/qOOdO691Xe2S9NgT9HhN0ZfFtEODVgvYulgXuCCXsJs+NUqcHAOxxFUmwkbPvYi0P0e2DT8JKeiOOC8VKUEgvVx+GKmqasm+Y6zHFW7vv3g2GstE1aRs3mttHRoC/JPM86PRyIxeWXEMzyG5wHqUu4XZpDbnWNxi6ugxnAGiL3CrIFdCgRNgHz5qS1l MustWin"
122+
}
123+
}
124+
`
125+
38126
// This is a dummy object allowing coexistance between mocked API calls and real API calls in acceptance tests
39127
// Acceptance tests will use this object that "mocks" the mocks
40128
type mockableClient interface {
@@ -57,7 +145,11 @@ func (r *testClient) AssertCalled(t mock.TestingT, methodName string, arguments
57145
}
58146

59147
func IsAccTest() bool {
60-
acc, err := strconv.ParseBool(os.Getenv(resource.TestEnvVar))
148+
val := os.Getenv(resource.TestEnvVar)
149+
if val == "" {
150+
return false
151+
}
152+
acc, err := strconv.ParseBool(val)
61153
if err != nil {
62154
panic("Err testing TF_ACC env var. It should be blank or a boolean value.")
63155
}
@@ -132,6 +224,16 @@ xTHuOMkklNO7SiTluAUBvXrjxfGqe/gwJOHxXQGHC8W6vyhR2BdVx9PKFVebWjlr
132224
gzRMpGgWnjsaz0ldu3uO7ozRxZg8FgdToIzAIaTytpHKI8HvONvPJlYywOMC1gRi
133225
KwX6p26xaVtCV8PbDpF3RHuEJV1NU6PDIhaIHhdL374BiX/KmcJ6yv7tbkczpK+V
134226
-----END RSA PRIVATE KEY-----`
227+
var testPublicKey = `
228+
-----BEGIN PUBLIC KEY-----
229+
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtBLQAGmKJ7tpfzYJyqLG
230+
ZDwHL51+d6T8Z00BnP9CFfzxZZZ48PcYSUHuTyCM8mR5JqYLyH6C8tZ/DKqwxUnc
231+
ONgBytG3MM42bgxfHIhsZRj5rCz1oqWlSLuXvgww1kuqWnt6r+NtnXog439YsGTH
232+
RotrTLTdEgOxH0EFP5uHUc9w/Uix7rWU7GB2ra060oeTB/hKpts5U70eI2EI6ec9
233+
1sJdUIj7xNfBJeQQrz4CFUrkyzL06211CFvhmxH2hA9gBKOqC3rGL8XraHZBhGWn
234+
mXlrQB7nNKsJrrv5fHwaPDrAY4iNP2W0q3LRpyNigJ6cgRuGJhHa82iHPmxgIx8m
235+
fwIDAQAB
236+
-----END PUBLIC KEY-----`
135237

136238
var testKeyFingerPrint = "b4:8a:7d:54:e6:81:04:b2:fa:ce:ba:55:34:dd:00:00"
137239
var testTenancyOCID = "ocid1.tenancy.oc1..faketenancy"

resource_obmcs_core_cpe_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func (s *ResourceCoreCpeTestSuite) SetupTest() {
4646
resource "baremetal_core_cpe" "t" {
4747
compartment_id = "${var.compartment_id}"
4848
display_name = "displayname"
49-
ip_address = "123.123.123.123"
49+
ip_address = "123.123.123.123"
5050
}
5151
`
5252

resource_obmcs_core_dhcp_options_test.go

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -45,21 +45,21 @@ func (s *ResourceCoreDHCPOptionsTestSuite) SetupTest() {
4545
s.TimeCreated = baremetal.Time{Time: time.Now()}
4646

4747
s.Config = `
48-
resource "baremetal_core_dhcp_options" "t" {
49-
compartment_id = "${var.compartment_id}"
50-
display_name = "display_name"
51-
options {
52-
type = "type"
53-
custom_dns_servers = [ "custom_dns_servers" ]
54-
server_type = "server_type"
55-
}
56-
options {
57-
type = "type"
58-
custom_dns_servers = [ "custom_dns_servers" ]
59-
server_type = "server_type"
60-
}
61-
vcn_id = "vcn_id"
48+
resource "baremetal_core_virtual_network" "t" {
49+
cidr_block = "10.0.0.0/16"
50+
compartment_id = "${var.compartment_id}"
51+
display_name = "network_name"
52+
}
53+
resource "baremetal_core_dhcp_options" "t" {
54+
compartment_id = "${var.compartment_id}"
55+
display_name = "display_name"
56+
options {
57+
type = "DomainNameServer"
58+
custom_dns_servers = [ "8.8.8.8" ]
59+
server_type = "CustomDnsServer"
6260
}
61+
vcn_id = "${baremetal_core_virtual_network.t.id}"
62+
}
6363
`
6464
s.Config += testProviderConfig()
6565

@@ -113,15 +113,18 @@ func (s *ResourceCoreDHCPOptionsTestSuite) TestCreateResourceCoreDHCPOptions() {
113113
Check: resource.ComposeTestCheckFunc(
114114

115115
resource.TestCheckResourceAttr(s.ResourceName, "display_name", s.Res.DisplayName),
116-
resource.TestCheckResourceAttr(s.ResourceName, "options.0.type", "type"),
117-
resource.TestCheckResourceAttr(s.ResourceName, "options.1.server_type", "server_type"),
116+
resource.TestCheckResourceAttr(s.ResourceName, "options.0.type", "DomainNameServer"),
117+
resource.TestCheckResourceAttr(s.ResourceName, "options.0.server_type", "CustomDnsServer"),
118118
),
119119
},
120120
},
121121
})
122122
}
123123

124124
func (s ResourceCoreDHCPOptionsTestSuite) TestUpdateDHCPOptions() {
125+
if IsAccTest() {
126+
s.T().Skip()
127+
}
125128
s.Client.On("GetDHCPOptions", "id").Return(s.Res, nil).Times(3)
126129

127130
config := `

resource_obmcs_core_drg_attachment_test.go

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,20 @@ func (s *ResourceCoreDrgAttachmentTestSuite) SetupTest() {
4545
s.TimeCreated = baremetal.Time{Time: time.Now()}
4646

4747
s.Config = `
48+
resource "baremetal_core_virtual_network" "t" {
49+
cidr_block = "10.0.0.0/16"
50+
compartment_id = "${var.compartment_id}"
51+
display_name = "network_name"
52+
}
53+
resource "baremetal_core_drg" "t" {
54+
compartment_id = "${var.compartment_id}"
55+
display_name = "display_name"
56+
}
4857
resource "baremetal_core_drg_attachment" "t" {
4958
compartment_id = "${var.compartment_id}"
5059
display_name = "display_name"
51-
drg_id = "drg_id"
52-
vcn_id = "vcn_id"
60+
drg_id = "${baremetal_core_drg.t.id}"
61+
vcn_id = "${baremetal_core_virtual_network.t.id}"
5362
}
5463
`
5564
s.Config += testProviderConfig()

resource_obmcs_core_drg_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,9 @@ func (s *ResourceCoreDrgTestSuite) TestCreateResourceCoreDrg() {
106106
}
107107

108108
func (s *ResourceCoreDrgTestSuite) TestCreateResourceCoreDrgWithoutDisplayName() {
109+
if IsAccTest() {
110+
s.T().Skip()
111+
}
109112
s.Client.On("GetDrg", "id").Return(s.Res, nil).Times(2)
110113
s.Client.On("GetDrg", "id").Return(s.DeletedRes, nil)
111114

0 commit comments

Comments
 (0)