Skip to content

Commit dc845a8

Browse files
committed
add tests
1 parent 82860c4 commit dc845a8

File tree

1 file changed

+54
-2
lines changed

1 file changed

+54
-2
lines changed

internal/services/applesilicon/server_test.go

Lines changed: 54 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import (
1313
)
1414

1515
func TestAccServer_Basic(t *testing.T) {
16-
t.Skip("Skipping AppleSilicon test as this kind of server can't be deleted before 24h")
1716
tt := acctest.NewTestTools(t)
1817
defer tt.Cleanup()
1918
resource.ParallelTest(t, resource.TestCase{
@@ -25,7 +24,7 @@ func TestAccServer_Basic(t *testing.T) {
2524
Config: `
2625
resource scaleway_apple_silicon_server main {
2726
name = "test-m1"
28-
type = "M1-M"
27+
type = "M2-M"
2928
}
3029
`,
3130
Check: resource.ComposeTestCheckFunc(
@@ -43,6 +42,59 @@ func TestAccServer_Basic(t *testing.T) {
4342
})
4443
}
4544

45+
func TestAccServer_EnableVPC(t *testing.T) {
46+
t.Skip("Skipping AppleSilicon VPC not available")
47+
tt := acctest.NewTestTools(t)
48+
defer tt.Cleanup()
49+
resource.ParallelTest(t, resource.TestCase{
50+
PreCheck: func() { acctest.PreCheck(t) },
51+
ProviderFactories: tt.ProviderFactories,
52+
CheckDestroy: isServerDestroyed(tt),
53+
Steps: []resource.TestStep{
54+
{
55+
Config: `
56+
resource scaleway_apple_silicon_server main {
57+
name = "test-m1"
58+
type = "M2-M"
59+
enable_vpc = true
60+
}
61+
`,
62+
Check: resource.ComposeTestCheckFunc(
63+
isServerPresent(tt, "scaleway_apple_silicon_server.main"),
64+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "name", "test-m1"),
65+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "type", "M1-M"),
66+
// Computed
67+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "ip"),
68+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "vnc_url"),
69+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "created_at"),
70+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "deletable_at"),
71+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "vpc_status", "vpc_enabled"),
72+
),
73+
},
74+
{
75+
Config: `
76+
resource scaleway_apple_silicon_server main {
77+
name = "test-m1"
78+
type = "M2-M"
79+
enable_vpc = false
80+
}
81+
`,
82+
Check: resource.ComposeTestCheckFunc(
83+
isServerPresent(tt, "scaleway_apple_silicon_server.main"),
84+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "name", "test-m1"),
85+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "type", "M1-M"),
86+
// Computed
87+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "ip"),
88+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "vnc_url"),
89+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "created_at"),
90+
resource.TestCheckResourceAttrSet("scaleway_apple_silicon_server.main", "deletable_at"),
91+
resource.TestCheckResourceAttr("scaleway_apple_silicon_server.main", "vpc_status", "vpc_disabled"),
92+
),
93+
},
94+
},
95+
})
96+
}
97+
4698
func isServerPresent(tt *acctest.TestTools, n string) resource.TestCheckFunc {
4799
return func(s *terraform.State) error {
48100
rs, ok := s.RootModule().Resources[n]

0 commit comments

Comments
 (0)