Skip to content

Commit 64a3746

Browse files
committed
test: switch const to env var
1 parent caa4d52 commit 64a3746

File tree

5 files changed

+40
-27
lines changed

5 files changed

+40
-27
lines changed

internal/services/baremetal/helper_test.go

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,22 @@ import (
44
"github.com/scaleway/scaleway-sdk-go/api/baremetal/v1"
55
"github.com/scaleway/scaleway-sdk-go/scw"
66
"github.com/scaleway/terraform-provider-scaleway/v2/internal/acctest"
7+
"os"
78
)
89

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

1625
return offer.Stock == baremetal.OfferStockAvailable

internal/services/baremetal/offer_data_source_test.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,12 @@ import (
1414
)
1515

1616
const (
17-
OfferName = "EM-I215E-NVME"
18-
Zone = "fr-par-2"
19-
OfferID = "ddb09834-8680-4339-b5e3-19ca5205fa1f"
17+
OfferID = "ddb09834-8680-4339-b5e3-19ca5205fa1f"
18+
)
19+
20+
var (
21+
OfferName = getenv("OFFER_NAME", "EM-I215E-NVME")
22+
Zone = getenv("ZONE", "fr-par-2")
2023
)
2124

2225
func TestAccDataSourceOffer_Basic(t *testing.T) {

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
@@ -2,6 +2,7 @@ package baremetal_test
22

33
import (
44
"fmt"
5+
"github.com/scaleway/scaleway-sdk-go/scw"
56
"testing"
67

78
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
@@ -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

internal/services/baremetal/server_test.go

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package baremetal_test
33
import (
44
"encoding/json"
55
"fmt"
6+
"github.com/scaleway/scaleway-sdk-go/scw"
67
"reflect"
78
"regexp"
89
"strings"
@@ -25,7 +26,7 @@ func TestAccServer_Basic(t *testing.T) {
2526
tt := acctest.NewTestTools(t)
2627
defer tt.Cleanup()
2728

28-
if !IsOfferAvailable(OfferID, Zone, tt) {
29+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
2930
t.Skip("Offer is out of stock")
3031
}
3132

@@ -64,7 +65,7 @@ func TestAccServer_Basic(t *testing.T) {
6465
Check: resource.ComposeTestCheckFunc(
6566
testAccCheckBaremetalServerExists(tt, "scaleway_baremetal_server.base"),
6667
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "name", name),
67-
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_id", Zone+"/"+OfferID),
68+
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_name", OfferName),
6869
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "os", Zone+"/96e5f0f2-d216-4de2-8a15-68730d877885"),
6970
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "description", "test a description"),
7071
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "tags.0", "terraform-test"),
@@ -101,7 +102,7 @@ func TestAccServer_Basic(t *testing.T) {
101102
Check: resource.ComposeTestCheckFunc(
102103
testAccCheckBaremetalServerExists(tt, "scaleway_baremetal_server.base"),
103104
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "name", name),
104-
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_id", Zone+"/"+OfferID),
105+
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_name", OfferName),
105106
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "os", Zone+"/96e5f0f2-d216-4de2-8a15-68730d877885"),
106107
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "description", "test a description"),
107108
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "tags.#", "4"),
@@ -120,7 +121,7 @@ func TestAccServer_RequiredInstallConfig(t *testing.T) {
120121
tt := acctest.NewTestTools(t)
121122
defer tt.Cleanup()
122123

123-
if !IsOfferAvailable(OfferID, Zone, tt) {
124+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
124125
t.Skip("Offer is out of stock")
125126
}
126127

@@ -170,7 +171,7 @@ func TestAccServer_WithoutInstallConfig(t *testing.T) {
170171
Check: resource.ComposeTestCheckFunc(
171172
testAccCheckBaremetalServerExists(tt, "scaleway_baremetal_server.base"),
172173
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "name", "TestAccScalewayBaremetalServer_WithoutInstallConfig"),
173-
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_id", Zone+"/"+OfferID),
174+
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_name", OfferName),
174175
resource.TestCheckNoResourceAttr("scaleway_baremetal_server.base", "os"),
175176
),
176177
},
@@ -182,7 +183,7 @@ func TestAccServer_CreateServerWithCustomInstallConfig(t *testing.T) {
182183
tt := acctest.NewTestTools(t)
183184
defer tt.Cleanup()
184185

185-
if !IsOfferAvailable(OfferID, Zone, tt) {
186+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
186187
t.Skip("Offer is out of stock")
187188
}
188189

@@ -222,7 +223,7 @@ func TestAccServer_CreateServerWithCustomInstallConfig(t *testing.T) {
222223
Check: resource.ComposeTestCheckFunc(
223224
testAccCheckBaremetalServerExists(tt, "scaleway_baremetal_server.base"),
224225
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "name", name),
225-
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_id", Zone+"/"+OfferID),
226+
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "offer_name", OfferName),
226227
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "os", Zone+"/96e5f0f2-d216-4de2-8a15-68730d877885"),
227228
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "description", "test a description"),
228229
resource.TestCheckResourceAttr("scaleway_baremetal_server.base", "tags.0", "terraform-test"),
@@ -293,7 +294,7 @@ func TestAccServer_CreateServerWithOption(t *testing.T) {
293294
tt := acctest.NewTestTools(t)
294295
defer tt.Cleanup()
295296

296-
if !IsOfferAvailable(OfferID, Zone, tt) {
297+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
297298
t.Skip("Offer is out of stock")
298299
}
299300

@@ -359,7 +360,7 @@ func TestAccServer_AddOption(t *testing.T) {
359360
tt := acctest.NewTestTools(t)
360361
defer tt.Cleanup()
361362

362-
if !IsOfferAvailable(OfferID, Zone, tt) {
363+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
363364
t.Skip("Offer is out of stock")
364365
}
365366

@@ -451,7 +452,7 @@ func TestAccServer_AddTwoOptionsThenDeleteOne(t *testing.T) {
451452
tt := acctest.NewTestTools(t)
452453
defer tt.Cleanup()
453454

454-
if !IsOfferAvailable(OfferID, Zone, tt) {
455+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
455456
t.Skip("Offer is out of stock")
456457
}
457458

@@ -606,7 +607,7 @@ func TestAccServer_CreateServerWithPrivateNetwork(t *testing.T) {
606607
tt := acctest.NewTestTools(t)
607608
defer tt.Cleanup()
608609

609-
if !IsOfferAvailable(OfferID, Zone, tt) {
610+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
610611
t.Skip("Offer is out of stock")
611612
}
612613

@@ -678,7 +679,7 @@ func TestAccServer_AddPrivateNetwork(t *testing.T) {
678679
tt := acctest.NewTestTools(t)
679680
defer tt.Cleanup()
680681

681-
if !IsOfferAvailable(OfferID, Zone, tt) {
682+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
682683
t.Skip("Offer is out of stock")
683684
}
684685

@@ -791,7 +792,7 @@ func TestAccServer_AddAnotherPrivateNetwork(t *testing.T) {
791792
tt := acctest.NewTestTools(t)
792793
defer tt.Cleanup()
793794

794-
if !IsOfferAvailable(OfferID, Zone, tt) {
795+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
795796
t.Skip("Offer is out of stock")
796797
}
797798

@@ -917,7 +918,7 @@ func TestAccServer_WithIPAMPrivateNetwork(t *testing.T) {
917918
tt := acctest.NewTestTools(t)
918919
defer tt.Cleanup()
919920

920-
if !IsOfferAvailable(OfferID, Zone, tt) {
921+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
921922
t.Skip("Offer is out of stock")
922923
}
923924

@@ -1099,7 +1100,7 @@ func TestAccServer_UpdateSubscriptionPeriod(t *testing.T) {
10991100

11001101
newOffer := "EM-B320E-NVME"
11011102

1102-
if !IsOfferAvailable(OfferID, Zone, tt) {
1103+
if !IsOfferAvailable(OfferName, scw.Zone(Zone), tt) {
11031104
t.Skip("Offer is out of stock")
11041105
}
11051106

0 commit comments

Comments
 (0)