Skip to content

Commit 18d6ae6

Browse files
committed
add tests
1 parent 82860c4 commit 18d6ae6

File tree

1 file changed

+55
-2
lines changed

1 file changed

+55
-2
lines changed

internal/services/applesilicon/server_test.go

Lines changed: 55 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ 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")
16+
t.Skip("Skipping AppleSilicon deletion before 24h")
1717
tt := acctest.NewTestTools(t)
1818
defer tt.Cleanup()
1919
resource.ParallelTest(t, resource.TestCase{
@@ -25,7 +25,7 @@ func TestAccServer_Basic(t *testing.T) {
2525
Config: `
2626
resource scaleway_apple_silicon_server main {
2727
name = "test-m1"
28-
type = "M1-M"
28+
type = "M2-M"
2929
}
3030
`,
3131
Check: resource.ComposeTestCheckFunc(
@@ -43,6 +43,59 @@ func TestAccServer_Basic(t *testing.T) {
4343
})
4444
}
4545

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

0 commit comments

Comments
 (0)