Skip to content

Commit d3cd20a

Browse files
authored
fix(baremetal): refacto and update offer tests (#3205)
update cassette golangci lint update cassettes test: switch const to env var tests: register cassettes fix: linter tests: register cassettes tests: register cassettes Delete internal/services/block/testdata/volume-from-snapshot-with-smaller-size.cassette.yaml Delete internal/services/block/testdata/volume-from-snapshot-with-new-size.cassette.yaml tests: register cassettes tests: register cassettes tests: register cassettes fix: check if attr is set instead of value
1 parent 9662e6a commit d3cd20a

29 files changed

+28552
-20013
lines changed

internal/services/baremetal/helper_test.go

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,27 @@
11
package baremetal_test
22

33
import (
4+
"os"
5+
46
"github.com/scaleway/scaleway-sdk-go/api/baremetal/v1"
57
"github.com/scaleway/scaleway-sdk-go/scw"
68
"github.com/scaleway/terraform-provider-scaleway/v2/internal/acctest"
79
)
810

9-
func IsOfferAvailable(offerID string, zone scw.Zone, tt *acctest.TestTools) bool {
11+
func getenv(key, fallback string) string {
12+
value := os.Getenv(key)
13+
if value == "" {
14+
return fallback
15+
}
16+
17+
return value
18+
}
19+
20+
func IsOfferAvailable(offerName string, zone scw.Zone, tt *acctest.TestTools) bool {
1021
api := baremetal.NewAPI(tt.Meta.ScwClient())
11-
offer, _ := api.GetOffer(&baremetal.GetOfferRequest{
12-
Zone: zone,
13-
OfferID: offerID,
22+
offer, _ := api.GetOfferByName(&baremetal.GetOfferByNameRequest{
23+
OfferName: offerName,
24+
Zone: zone,
1425
})
1526

1627
return offer.Stock == baremetal.OfferStockAvailable

internal/services/baremetal/offer_data_source_test.go

Lines changed: 48 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,9 @@ import (
1313
"github.com/scaleway/terraform-provider-scaleway/v2/internal/services/baremetal"
1414
)
1515

16-
const (
17-
OfferName = "EM-B220E-NVME"
18-
Zone = "fr-par-1"
19-
OfferID = "206ea234-9097-4ae1-af68-6d2be09f47ed"
16+
var (
17+
OfferName = getenv("OFFER_NAME", "EM-I215E-NVME")
18+
Zone = getenv("ZONE", "fr-par-2")
2019
)
2120

2221
func TestAccDataSourceOffer_Basic(t *testing.T) {
@@ -44,22 +43,21 @@ func TestAccDataSourceOffer_Basic(t *testing.T) {
4443
isOfferPresent(tt, "data.scaleway_baremetal_offer.test2"),
4544
resource.TestCheckResourceAttrPair("data.scaleway_baremetal_offer.test2", "offer_id", "data.scaleway_baremetal_offer.test1", "offer_id"),
4645
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "name", OfferName),
47-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
48-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "include_disabled", "false"),
49-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "bandwidth", "1000000000"),
50-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
51-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.name", "AMD EPYC 7232P"),
52-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.core_count", "8"),
53-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.frequency", "3100"),
54-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count", "16"),
55-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.type", "NVMe"),
56-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.capacity", "1024209543168"),
57-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.type", "NVMe"),
58-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.capacity", "1024209543168"),
59-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.type", "DDR4"),
60-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.capacity", "64000000000"),
61-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.frequency", "2400"),
62-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc", "true"),
46+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "commercial_range"),
47+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "include_disabled"),
48+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "bandwidth"),
49+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.name"),
50+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.core_count"),
51+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.frequency"),
52+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count"),
53+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.type"),
54+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.capacity"),
55+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.type"),
56+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.capacity"),
57+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.type"),
58+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.capacity"),
59+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.frequency"),
60+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc"),
6361
),
6462
},
6563
},
@@ -95,22 +93,21 @@ func TestAccDataSourceOffer_SubscriptionPeriodHourly(t *testing.T) {
9593
resource.TestCheckResourceAttrPair("data.scaleway_baremetal_offer.test2", "offer_id", "data.scaleway_baremetal_offer.test1", "offer_id"),
9694
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "name", OfferName),
9795
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "subscription_period", "hourly"),
98-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
99-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "include_disabled", "false"),
100-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "bandwidth", "1000000000"),
101-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
102-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.name", "AMD EPYC 7232P"),
103-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.core_count", "8"),
104-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.frequency", "3100"),
105-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count", "16"),
106-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.type", "NVMe"),
107-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.capacity", "1024209543168"),
108-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.type", "NVMe"),
109-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.capacity", "1024209543168"),
110-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.type", "DDR4"),
111-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.capacity", "64000000000"),
112-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.frequency", "2400"),
113-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc", "true"),
96+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "commercial_range"),
97+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "include_disabled"),
98+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "bandwidth"),
99+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.name"),
100+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.core_count"),
101+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.frequency"),
102+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count"),
103+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.type"),
104+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.capacity"),
105+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.type"),
106+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.capacity"),
107+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.type"),
108+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.capacity"),
109+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.frequency"),
110+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc"),
114111
),
115112
},
116113
},
@@ -146,22 +143,21 @@ func TestAccDataSourceOffer_SubscriptionPeriodMonthly(t *testing.T) {
146143
resource.TestCheckResourceAttrPair("data.scaleway_baremetal_offer.test2", "offer_id", "data.scaleway_baremetal_offer.test1", "offer_id"),
147144
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "name", OfferName),
148145
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "subscription_period", "monthly"),
149-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
150-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "include_disabled", "false"),
151-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "bandwidth", "1000000000"),
152-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "commercial_range", "beryllium"),
153-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.name", "AMD EPYC 7232P"),
154-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.core_count", "8"),
155-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.frequency", "3100"),
156-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count", "16"),
157-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.type", "NVMe"),
158-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.0.capacity", "1024209543168"),
159-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.type", "NVMe"),
160-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "disk.1.capacity", "1024209543168"),
161-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.type", "DDR4"),
162-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.capacity", "64000000000"),
163-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.frequency", "2400"),
164-
resource.TestCheckResourceAttr("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc", "true"),
146+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "commercial_range"),
147+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "include_disabled"),
148+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "bandwidth"),
149+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.name"),
150+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.core_count"),
151+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.frequency"),
152+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "cpu.0.thread_count"),
153+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.type"),
154+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.0.capacity"),
155+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.type"),
156+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "disk.1.capacity"),
157+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.type"),
158+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.capacity"),
159+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.frequency"),
160+
resource.TestCheckResourceAttrSet("data.scaleway_baremetal_offer.test2", "memory.0.is_ecc"),
165161
),
166162
},
167163
},

internal/services/baremetal/partition_schema_source_test.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ import (
1616
)
1717

1818
const (
19-
offerNameEasyPartitioning = "EM-B220E-NVME"
2019
incompatibleOfferName = "EM-L110X-SATA"
2120
AlternativeOfferNameEasyPartitioning = "EM-B420E-NVME"
2221
mountpoint = "/data"
@@ -73,7 +72,7 @@ func TestAccPartitionSchemaDataSource_Basic(t *testing.T) {
7372
}
7473
`,
7574
Zone,
76-
offerNameEasyPartitioning,
75+
OfferName,
7776
Zone,
7877
sshKeyName,
7978
SSHKeyBaremetal,
@@ -141,7 +140,7 @@ func TestAccPartitionSchemaDataSource_WithoutExtraPart(t *testing.T) {
141140
}
142141
`,
143142
Zone,
144-
offerNameEasyPartitioning,
143+
OfferName,
145144
Zone,
146145
sshKeyName,
147146
SSHKeyBaremetal,
@@ -208,7 +207,7 @@ func TestAccPartitionSchemaDataSource_WithoutSwapAndExtraPart(t *testing.T) {
208207
}
209208
`,
210209
Zone,
211-
offerNameEasyPartitioning,
210+
OfferName,
212211
Zone,
213212
sshKeyName,
214213
SSHKeyBaremetal,

internal/services/baremetal/server_data_source_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"testing"
66

77
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
8+
"github.com/scaleway/scaleway-sdk-go/scw"
89
"github.com/scaleway/terraform-provider-scaleway/v2/internal/acctest"
910
baremetalchecks "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/baremetal/testfuncs"
1011
)
@@ -13,7 +14,7 @@ func TestAccDataSourceServer_Basic(t *testing.T) {
1314
tt := acctest.NewTestTools(t)
1415
defer tt.Cleanup()
1516

16-
if !IsOfferAvailable(OfferID, Zone, tt) {
17+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
1718
t.Skip("Offer is out of stock")
1819
}
1920

0 commit comments

Comments
 (0)