Merge pull request #3 from filipowm/fix/flaky-tests-2

chore: make tests less flaky due to random naming of resources
This commit is contained in:
Mateusz Filipowicz
2025-02-06 23:25:09 +01:00
committed by GitHub
11 changed files with 224 additions and 313 deletions

View File

@@ -12,4 +12,4 @@ build:
.PHONY: testacc
testacc:
TF_ACC=1 go test $(TEST) -v -count $(TEST_COUNT) -timeout $(TEST_TIMEOUT) $(TESTARGS)
TF_ACC=1 go test $(TEST) -test.parallel 2 -v -count $(TEST_COUNT) -timeout $(TEST_TIMEOUT) $(TESTARGS)

View File

@@ -36,7 +36,7 @@ func TestAccDataAccount_mac(t *testing.T) {
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccDataMacAccountConfig(mac),
Config: testAccDataAccountConfig(mac, mac),
Check: resource.ComposeTestCheckFunc(),
},
},
@@ -58,19 +58,3 @@ depends_on = [
}
`, name, password)
}
func testAccDataMacAccountConfig(mac string) string {
return fmt.Sprintf(`
resource "unifi_account" "test" {
name = "%[1]s"
password = "%[1]s"
}
data "unifi_account" "test" {
name = "%[1]s"
depends_on = [
unifi_account.test
]
}
`, mac)
}

View File

@@ -3,6 +3,7 @@ package provider
import (
"context"
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
@@ -12,6 +13,7 @@ import (
func TestAccDataUser_default(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() {
@@ -19,8 +21,8 @@ func TestAccDataUser_default(t *testing.T) {
_, err := testClient.CreateUser(context.Background(), "default", &unifi.User{
MAC: mac,
Name: "tfacc-User-Data",
Note: "tfacc-User-Data",
Name: name,
Note: name,
})
if err != nil {
t.Fatal(err)

View File

@@ -2,22 +2,24 @@ package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
)
func TestAccAccount_basic(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccAccountConfig("tfacc", "secure"),
Config: testAccAccountConfig(name, "secure"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_account.test", "name", "tfacc"),
resource.TestCheckResourceAttr("unifi_account.test", "name", name),
),
},
importStep("unifi_account.test"),
@@ -26,17 +28,19 @@ func TestAccAccount_basic(t *testing.T) {
}
func TestAccAccount_mac(t *testing.T) {
mac, unallocateMac := allocateTestMac(t)
defer unallocateMac()
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccAccountConfig("00B0D06FC226", "00B0D06FC226"),
Config: testAccAccountConfig(mac, mac),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_account.test", "name", "00B0D06FC226"),
resource.TestCheckResourceAttr("unifi_account.test", "password", "00B0D06FC226"),
resource.TestCheckResourceAttr("unifi_account.test", "name", mac),
resource.TestCheckResourceAttr("unifi_account.test", "password", mac),
),
},
importStep("unifi_account.test"),
@@ -47,8 +51,8 @@ func TestAccAccount_mac(t *testing.T) {
func testAccAccountConfig(name, password string) string {
return fmt.Sprintf(`
resource "unifi_account" "test" {
name = "%s"
password = "%s"
name = "%[1]s"
password = "%[2]s"
}
`, name, password)
}

View File

@@ -2,6 +2,7 @@ package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"regexp"
"strings"
"testing"
@@ -10,20 +11,21 @@ import (
)
func TestAccFirewallGroup_port_group(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccFirewallGroupConfig("testpg", "port-group", nil),
Config: testAccFirewallGroupConfig(name, "port-group", nil),
// Check: resource.ComposeTestCheckFunc(
// // testCheckFirewallGroupExists(t, "name"),
// ),
},
importStep("unifi_firewall_group.test"),
{
Config: testAccFirewallGroupConfig("testpg", "port-group", []string{"80", "443"}),
Config: testAccFirewallGroupConfig(name, "port-group", []string{"80", "443"}),
},
importStep("unifi_firewall_group.test"),
},
@@ -31,24 +33,25 @@ func TestAccFirewallGroup_port_group(t *testing.T) {
}
func TestAccFirewallGroup_address_group(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccFirewallGroupConfig("testag", "address-group", nil),
Config: testAccFirewallGroupConfig(name, "address-group", nil),
// Check: resource.ComposeTestCheckFunc(
// // testCheckFirewallGroupExists(t, "name"),
// ),
},
importStep("unifi_firewall_group.test"),
{
Config: testAccFirewallGroupConfig("testag", "address-group", []string{"10.0.0.1", "10.0.0.2"}),
Config: testAccFirewallGroupConfig(name, "address-group", []string{"10.0.0.1", "10.0.0.2"}),
},
importStep("unifi_firewall_group.test"),
{
Config: testAccFirewallGroupConfig("testag", "address-group", []string{"10.0.0.0/24"}),
Config: testAccFirewallGroupConfig(name, "address-group", []string{"10.0.0.0/24"}),
},
importStep("unifi_firewall_group.test"),
},

View File

@@ -2,19 +2,23 @@ package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
)
func TestAccPortForward_basic(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
name2 := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccPortForwardConfig("22", false, "10.1.1.1", "22", "fwd name"),
Config: testAccPortForwardConfig("22", false, "10.1.1.1", "22", name),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_port_forward.test", "dst_port", "22"),
@@ -22,7 +26,7 @@ func TestAccPortForward_basic(t *testing.T) {
},
importStep("unifi_port_forward.test"),
{
Config: testAccPortForwardConfig("22", false, "10.1.1.2", "8022", "fwd name"),
Config: testAccPortForwardConfig("22", false, "10.1.1.2", "8022", name),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_port_forward.test", "fwd_port", "8022"),
resource.TestCheckResourceAttr("unifi_port_forward.test", "fwd_ip", "10.1.1.2"),
@@ -30,9 +34,9 @@ func TestAccPortForward_basic(t *testing.T) {
},
importStep("unifi_port_forward.test"),
{
Config: testAccPortForwardConfig("22", false, "10.1.1.1", "22", "fwd name 2"),
Config: testAccPortForwardConfig("22", false, "10.1.1.1", "22", name2),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_port_forward.test", "name", "fwd name 2"),
resource.TestCheckResourceAttr("unifi_port_forward.test", "name", name2),
),
},
importStep("unifi_port_forward.test"),
@@ -41,13 +45,14 @@ func TestAccPortForward_basic(t *testing.T) {
}
func TestAccPortForward_src_ip(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccPortForwardConfigSrc("22", false, "10.1.1.1", "22", "fwd name", "192.168.1.0"),
Config: testAccPortForwardConfigSrc("22", false, "10.1.1.1", "22", name, "192.168.1.0"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_port_forward.test", "dst_port", "22"),
@@ -59,13 +64,14 @@ func TestAccPortForward_src_ip(t *testing.T) {
}
func TestAccPortForward_src_cidr(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccPortForwardConfigSrc("22", false, "10.1.1.1", "22", "fwd name", "192.168.1.0/20"),
Config: testAccPortForwardConfigSrc("22", false, "10.1.1.1", "22", name, "192.168.1.0/20"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_port_forward.test", "dst_port", "22"),

View File

@@ -1,12 +1,15 @@
package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
)
func TestAccPortProfile_basic(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() {
preCheck(t)
@@ -16,9 +19,10 @@ func TestAccPortProfile_basic(t *testing.T) {
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccPortProfileConfig,
Config: testAccPortProfileConfig(name),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_port_profile.test", "poe_mode", "off"),
resource.TestCheckResourceAttr("unifi_port_profile.test", "name", name),
),
},
importStep("unifi_port_profile.test"),
@@ -26,12 +30,14 @@ func TestAccPortProfile_basic(t *testing.T) {
})
}
const testAccPortProfileConfig = `
func testAccPortProfileConfig(name string) string {
return fmt.Sprintf(`
resource "unifi_port_profile" "test" {
name = "provider created"
name = "%s"
poe_mode = "off"
speed = 1000
stp_port_mode = false
}
`
`, name)
}

View File

@@ -2,21 +2,23 @@ package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
)
func TestAccRadiusProfile_basic(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccRadiusProfileConfig("test"),
Config: testAccRadiusProfileConfig(name),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_radius_profile.test", "name", "test"),
resource.TestCheckResourceAttr("unifi_radius_profile.test", "name", name),
),
},
importStep("unifi_radius_profile.test"),
@@ -25,15 +27,16 @@ func TestAccRadiusProfile_basic(t *testing.T) {
}
func TestAccRadiusProfile_servers(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccRadiusProfileConfigServer(),
Config: testAccRadiusProfileConfigServer(name),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_radius_profile.test", "name", "test"),
resource.TestCheckResourceAttr("unifi_radius_profile.test", "name", name),
),
},
importStep("unifi_radius_profile.test"),
@@ -61,10 +64,10 @@ func TestAccRadiusProfile_importByName(t *testing.T) {
})
}
func testAccRadiusProfileConfigServer() string {
return `
func testAccRadiusProfileConfigServer(name string) string {
return fmt.Sprintf(`
resource "unifi_radius_profile" "test" {
name = "test"
name = "%s"
auth_server {
ip = "192.168.1.1"
xsecret = "securepw1"
@@ -86,7 +89,7 @@ resource "unifi_radius_profile" "test" {
use_usg_acct_server = false
use_usg_auth_server = false
}
`
`, name)
}
func testAccRadiusProfileConfig(name string) string {

View File

@@ -1,46 +1,53 @@
package provider
import (
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"testing"
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
)
func TestAccUserGroup_basic(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccUserGroupConfig,
Config: testAccUserGroupConfig(name),
// Check: resource.ComposeTestCheckFunc(
// // testCheckUserGroupExists(t, "name"),
// ),
},
{
Config: testAccUserGroupConfig_qos,
Config: testAccUserGroupConfig_qos(name),
},
importStep("unifi_user_group.test"),
{
Config: testAccUserGroupConfig,
Config: testAccUserGroupConfig(name),
},
importStep("unifi_user_group.test"),
},
})
}
const testAccUserGroupConfig = `
func testAccUserGroupConfig(name string) string {
return fmt.Sprintf(`
resource "unifi_user_group" "test" {
name = "tfacc"
name = "%s"
}
`, name)
}
`
const testAccUserGroupConfig_qos = `
func testAccUserGroupConfig_qos(name string) string {
return fmt.Sprintf(`
resource "unifi_user_group" "test" {
name = "tfacc"
name = "%s"
qos_rate_max_up = 2000
qos_rate_max_down = 50
}
`
`, name)
}

View File

@@ -3,6 +3,7 @@ package provider
import (
"context"
"fmt"
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
"net"
"regexp"
"strings"
@@ -56,7 +57,7 @@ func TestAccUser_basic(t *testing.T) {
func TestAccUser_fixed_ip(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
ip, err := cidr.Host(subnet, 1)
@@ -70,7 +71,7 @@ func TestAccUser_fixed_ip(t *testing.T) {
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccUserConfig(mac, "tfacc", "tfacc fixed ip"),
Config: testAccUserConfig(mac, name, "tfacc fixed ip"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "fixed_ip", ""),
@@ -78,7 +79,7 @@ func TestAccUser_fixed_ip(t *testing.T) {
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_fixedIP(subnet, vlan, mac, &ip),
Config: testAccUserConfig_fixedIP(name, subnet, vlan, mac, &ip),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "fixed_ip", ip.String()),
@@ -89,7 +90,7 @@ func TestAccUser_fixed_ip(t *testing.T) {
// this passes the network again even though its not used
// to avoid a destroy order of operations issue, can
// maybe work it out some other way
Config: testAccUserConfig_network(subnet, vlan) + testAccUserConfig(mac, "tfacc", "tfacc fixed ip"),
Config: testAccUserConfig_network(name, subnet, vlan) + testAccUserConfig(mac, name, "tfacc fixed ip"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "fixed_ip", ""),
@@ -103,6 +104,7 @@ func TestAccUser_fixed_ip(t *testing.T) {
func TestAccUser_blocking(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
@@ -110,7 +112,7 @@ func TestAccUser_blocking(t *testing.T) {
// TODO: CheckDestroy: ,
Steps: []resource.TestStep{
{
Config: testAccUserConfig_block(mac, false),
Config: testAccUserConfig_block(mac, name, false),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "blocked", "false"),
@@ -118,7 +120,7 @@ func TestAccUser_blocking(t *testing.T) {
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_block(mac, true),
Config: testAccUserConfig_block(mac, name, true),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "blocked", "true"),
@@ -126,7 +128,7 @@ func TestAccUser_blocking(t *testing.T) {
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_block(mac, false),
Config: testAccUserConfig_block(mac, name, false),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "blocked", "false"),
@@ -140,6 +142,7 @@ func TestAccUser_blocking(t *testing.T) {
func TestAccUser_existing_mac_allow(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() {
@@ -147,7 +150,7 @@ func TestAccUser_existing_mac_allow(t *testing.T) {
_, err := testClient.CreateUser(context.Background(), "default", &unifi.User{
MAC: mac,
Name: "tfacc-existing",
Name: name,
Note: "tfacc-existing",
})
if err != nil && strings.Contains(err.Error(), "api.Err.MacUsed") {
@@ -162,7 +165,7 @@ func TestAccUser_existing_mac_allow(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccUserConfig_existing(mac, "tfacc", "tfacc note", true, true),
Config: testAccUserConfig_existing(mac, name, "tfacc note", true, true),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
resource.TestCheckResourceAttr("unifi_user.test", "note", "tfacc note"),
@@ -175,10 +178,11 @@ func TestAccUser_existing_mac_allow(t *testing.T) {
func TestAccUser_existing_mac_deny(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
name := acctest.RandomWithPrefix("tfacc")
_, err := testClient.CreateUser(context.Background(), "default", &unifi.User{
MAC: mac,
Name: "tfacc-existing",
Name: name,
Note: "tfacc-existing",
})
if err != nil {
@@ -199,7 +203,7 @@ func TestAccUser_existing_mac_deny(t *testing.T) {
ProviderFactories: providerFactories,
Steps: []resource.TestStep{
{
Config: testAccUserConfig_existing(mac, "tfacc", "tfacc note", false, false),
Config: testAccUserConfig_existing(mac, name, "tfacc note", false, false),
ExpectError: regexp.MustCompile(`api\.err\.MacUsed`),
},
},
@@ -209,27 +213,28 @@ func TestAccUser_existing_mac_deny(t *testing.T) {
func TestAccUser_fingerprint(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
resource.ParallelTest(t, resource.TestCase{
ProviderFactories: providerFactories,
CheckDestroy: testCheckUserDestroy,
Steps: []resource.TestStep{
{
Config: testAccUserConfig_fingerprint(mac, "tfacc", 123),
Config: testAccUserConfig_fingerprint(mac, name, 123),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "dev_id_override", "123"),
),
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_fingerprint(mac, "tfacc", 456),
Config: testAccUserConfig_fingerprint(mac, name, 456),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "dev_id_override", "456"),
),
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig(mac, "tfacc", ""),
Config: testAccUserConfig(mac, name, ""),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "dev_id_override", "0"),
),
@@ -242,6 +247,7 @@ func TestAccUser_fingerprint(t *testing.T) {
func TestAccUser_localdns(t *testing.T) {
mac, unallocateTestMac := allocateTestMac(t)
defer unallocateTestMac()
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
@@ -259,21 +265,21 @@ func TestAccUser_localdns(t *testing.T) {
CheckDestroy: testCheckUserDestroy,
Steps: []resource.TestStep{
{
Config: testAccUserConfig(mac, "tfacc", ""),
Config: testAccUserConfig(mac, name, ""),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "local_dns_record", ""),
),
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_localdns(subnet, vlan, mac, "tfacc", "resource.example.com", &ip),
Config: testAccUserConfig_localdns(subnet, vlan, mac, name, "resource.example.com", &ip),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "local_dns_record", "resource.example.com"),
),
},
userImportStep("unifi_user.test"),
{
Config: testAccUserConfig_localdns(subnet, vlan, mac, "tfacc", "", &ip),
Config: testAccUserConfig_localdns(subnet, vlan, mac, name, "", &ip),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("unifi_user.test", "local_dns_record", ""),
),
@@ -314,44 +320,44 @@ resource "unifi_user" "test" {
`, mac, name, note)
}
func testAccUserConfig_network(subnet *net.IPNet, vlan int) string {
func testAccUserConfig_network(name string, subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
resource "unifi_network" "test" {
name = "tfaccfixedip"
name = "%[1]s"
purpose = "corporate"
vlan_id = %[2]d
subnet = "%[1]s"
dhcp_start = cidrhost("%[1]s", 6)
dhcp_stop = cidrhost("%[1]s", 254)
vlan_id = %[3]d
subnet = "%[2]s"
dhcp_start = cidrhost("%[2]s", 6)
dhcp_stop = cidrhost("%[2]s", 254)
dhcp_enabled = true
}
`, subnet, vlan)
`, name, subnet, vlan)
}
func testAccUserConfig_fixedIP(subnet *net.IPNet, vlan int, mac string, ip *net.IP) string {
return fmt.Sprintf(testAccUserConfig_network(subnet, vlan)+`
func testAccUserConfig_fixedIP(name string, subnet *net.IPNet, vlan int, mac string, ip *net.IP) string {
return fmt.Sprintf(testAccUserConfig_network(name, subnet, vlan)+`
resource "unifi_user" "test" {
mac = "%[1]s"
name = "tfacc"
note = "tfacc fixed ip"
name = "%[2]s"
note = "%[2]s fixed ip"
fixed_ip = "%[2]s"
fixed_ip = "%[3]s"
network_id = unifi_network.test.id
}
`, mac, ip)
`, mac, name, ip)
}
func testAccUserConfig_block(mac string, blocked bool) string {
func testAccUserConfig_block(mac, name string, blocked bool) string {
return fmt.Sprintf(`
resource "unifi_user" "test" {
mac = "%s"
name = "tfacc"
note = "tfacc block %t"
mac = "%[1]s"
name = "%[2]s"
note = "%[2]s block %[3]t"
blocked = %t
blocked = %[3]t
}
`, mac, blocked, blocked)
`, mac, name, blocked)
}
func testAccUserConfig_existing(mac, name, note string, allow, skip bool) string {
@@ -378,7 +384,7 @@ resource "unifi_user" "test" {
}
func testAccUserConfig_localdns(subnet *net.IPNet, vlan int, mac, name string, localDnsRecord string, ip *net.IP) string {
return fmt.Sprintf(testAccUserConfig_network(subnet, vlan)+`
return fmt.Sprintf(testAccUserConfig_network(name, subnet, vlan)+`
resource "unifi_user" "test" {
mac = "%[1]s"
name = "%[2]s"

View File

@@ -11,7 +11,9 @@ import (
)
func TestAccWLAN_wpapsk(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -22,7 +24,7 @@ func TestAccWLAN_wpapsk(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_wpapsk(subnet, vlan, "disabled"),
Config: testAccWLANConfig_wpapsk(name, subnet, vlan, "disabled"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -33,7 +35,9 @@ func TestAccWLAN_wpapsk(t *testing.T) {
}
func TestAccWLAN_open(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -44,21 +48,21 @@ func TestAccWLAN_open(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_open(subnet, vlan),
Config: testAccWLANConfig_open(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_open_mac_filter(subnet, vlan),
Config: testAccWLANConfig_open_mac_filter(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_open(subnet, vlan),
Config: testAccWLANConfig_open(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -69,7 +73,9 @@ func TestAccWLAN_open(t *testing.T) {
}
func TestAccWLAN_change_security_and_pmf(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -80,35 +86,35 @@ func TestAccWLAN_change_security_and_pmf(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_wpapsk(subnet, vlan, "disabled"),
Config: testAccWLANConfig_wpapsk(name, subnet, vlan, "disabled"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_open(subnet, vlan),
Config: testAccWLANConfig_open(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_wpapsk(subnet, vlan, "optional"),
Config: testAccWLANConfig_wpapsk(name, subnet, vlan, "optional"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_wpapsk(subnet, vlan, "required"),
Config: testAccWLANConfig_wpapsk(name, subnet, vlan, "required"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_wpapsk(subnet, vlan, "disabled"),
Config: testAccWLANConfig_wpapsk(name, subnet, vlan, "disabled"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -119,7 +125,9 @@ func TestAccWLAN_change_security_and_pmf(t *testing.T) {
}
func TestAccWLAN_schedule(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -130,7 +138,7 @@ func TestAccWLAN_schedule(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_schedule(subnet, vlan),
Config: testAccWLANConfig_schedule(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -138,7 +146,7 @@ func TestAccWLAN_schedule(t *testing.T) {
importStep("unifi_wlan.test"),
// remove schedule
{
Config: testAccWLANConfig_open(subnet, vlan),
Config: testAccWLANConfig_open(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -149,6 +157,7 @@ func TestAccWLAN_schedule(t *testing.T) {
}
func TestAccWLAN_wpaeap(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
@@ -161,7 +170,7 @@ func TestAccWLAN_wpaeap(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_wpaeap(subnet, vlan),
Config: testAccWLANConfig_wpaeap(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -172,7 +181,9 @@ func TestAccWLAN_wpaeap(t *testing.T) {
}
func TestAccWLAN_wlan_band(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -183,7 +194,7 @@ func TestAccWLAN_wlan_band(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_wlan_band(subnet, vlan),
Config: testAccWLANConfig_wlan_band(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -194,7 +205,9 @@ func TestAccWLAN_wlan_band(t *testing.T) {
}
func TestAccWLAN_no2ghz_oui(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -205,7 +218,7 @@ func TestAccWLAN_no2ghz_oui(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_no2ghz_oui(subnet, vlan),
Config: testAccWLANConfig_no2ghz_oui(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -264,7 +277,9 @@ func TestAccWLAN_bss_transition(t *testing.T) {
}
func TestAccWLAN_uapsd(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -275,7 +290,7 @@ func TestAccWLAN_uapsd(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_uapsd(subnet, vlan),
Config: testAccWLANConfig_uapsd(name, subnet, vlan),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -310,7 +325,9 @@ func TestAccWLAN_fast_roaming_enabled(t *testing.T) {
}
func TestAccWLAN_wpa3(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() {
preCheck(t)
@@ -324,21 +341,21 @@ func TestAccWLAN_wpa3(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_wpa3(subnet, vlan, false, "required"),
Config: testAccWLANConfig_wpa3(name, subnet, vlan, false, "required"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_wpa3(subnet, vlan, true, "optional"),
Config: testAccWLANConfig_wpa3(name, subnet, vlan, true, "optional"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_wpa3(subnet, vlan, false, "required"),
Config: testAccWLANConfig_wpa3(name, subnet, vlan, false, "required"),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -349,7 +366,9 @@ func TestAccWLAN_wpa3(t *testing.T) {
}
func TestAccWLAN_minimum_data_rate(t *testing.T) {
name := acctest.RandomWithPrefix("tfacc")
subnet, vlan := getTestVLAN(t)
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { preCheck(t) },
ProviderFactories: providerFactories,
@@ -360,35 +379,35 @@ func TestAccWLAN_minimum_data_rate(t *testing.T) {
},
Steps: []resource.TestStep{
{
Config: testAccWLANConfig_minimum_data_rate(subnet, vlan, 5500, 18000),
Config: testAccWLANConfig_minimum_data_rate(name, subnet, vlan, 5500, 18000),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_minimum_data_rate(subnet, vlan, 1000, 18000),
Config: testAccWLANConfig_minimum_data_rate(name, subnet, vlan, 1000, 18000),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_minimum_data_rate(subnet, vlan, 0, 0),
Config: testAccWLANConfig_minimum_data_rate(name, subnet, vlan, 0, 0),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_minimum_data_rate(subnet, vlan, 6000, 9000),
Config: testAccWLANConfig_minimum_data_rate(name, subnet, vlan, 6000, 9000),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
},
importStep("unifi_wlan.test"),
{
Config: testAccWLANConfig_minimum_data_rate(subnet, vlan, 18000, 6000),
Config: testAccWLANConfig_minimum_data_rate(name, subnet, vlan, 18000, 6000),
Check: resource.ComposeTestCheckFunc(
// testCheckNetworkExists(t, "name"),
),
@@ -398,21 +417,24 @@ func TestAccWLAN_minimum_data_rate(t *testing.T) {
})
}
func testAccWLANConfig_wpapsk(subnet *net.IPNet, vlan int, pmf string) string {
func testAccWLANBaseConfig(name string, subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
name = "%[1]s"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
subnet = "%[2]s"
vlan_id = "%[3]d"
}`, name, subnet, vlan)
}
func testAccWLANConfig_wpapsk(name string, subnet *net.IPNet, vlan int, pmf string) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -421,17 +443,13 @@ resource "unifi_wlan" "test" {
multicast_enhance = true
pmf_mode = %[3]q
pmf_mode = %[2]q
}
`, subnet, vlan, pmf)
`, name, pmf)
}
func testAccWLANConfig_wpaeap(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
func testAccWLANConfig_wpaeap(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
data "unifi_radius_profile" "default" {}
resource "unifi_setting_radius" "this" {
@@ -439,15 +457,8 @@ resource "unifi_setting_radius" "this" {
secret = "securepw"
}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
}
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -456,47 +467,25 @@ resource "unifi_wlan" "test" {
radius_profile_id = data.unifi_radius_profile.default.id
}
`, subnet, vlan)
}
func testAccWLANConfig_open(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name)
}
func testAccWLANConfig_open(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-open"
name = "%[1]s-open"
network_id = unifi_network.test.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
security = "open"
}
`, subnet, vlan)
}
func testAccWLANConfig_schedule(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name)
}
func testAccWLANConfig_schedule(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-open-schedule"
name = "%[1]s-sched"
network_id = unifi_network.test.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
@@ -528,24 +517,13 @@ resource "unifi_wlan" "test" {
duration = 60*1
}
}
`, subnet, vlan)
}
func testAccWLANConfig_open_mac_filter(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name)
}
func testAccWLANConfig_open_mac_filter(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-open"
name = "%[1]s-open"
network_id = unifi_network.test.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
@@ -555,24 +533,13 @@ resource "unifi_wlan" "test" {
mac_filter_list = ["ab:cd:ef:12:34:56"]
mac_filter_policy = "allow"
}
`, subnet, vlan)
}
func testAccWLANConfig_wlan_band(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name)
}
func testAccWLANConfig_wlan_band(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -581,24 +548,13 @@ resource "unifi_wlan" "test" {
wlan_band = "5g"
multicast_enhance = true
}
`, subnet, vlan)
}
func testAccWLANConfig_no2ghz_oui(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name)
}
func testAccWLANConfig_no2ghz_oui(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -607,74 +563,41 @@ resource "unifi_wlan" "test" {
no2ghz_oui = false
multicast_enhance = true
}
`, subnet, vlan)
`, name)
}
func testAccWLANConfig_proxy_arp(name string, subnet *net.IPNet, vlan int, proxyArp bool) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "%[1]s"
purpose = "corporate"
subnet = "%[2]s"
vlan_id = %[3]d
}
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "%[1]s"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
security = "wpapsk"
proxy_arp = %[4]t
proxy_arp = %[2]t
}
`, name, subnet, vlan, proxyArp)
`, name, proxyArp)
}
func testAccWLANConfig_bss_transition(name string, subnet *net.IPNet, vlan int, bssTransition bool) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "%[1]s"
purpose = "corporate"
subnet = "%[2]s"
vlan_id = %[3]d
}
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "%[1]s"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
security = "wpapsk"
bss_transition = %[4]t
bss_transition = %[2]t
}
`, name, subnet, vlan, bssTransition)
}
func testAccWLANConfig_uapsd(subnet *net.IPNet, vlan int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name, bssTransition)
}
func testAccWLANConfig_uapsd(name string, subnet *net.IPNet, vlan int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -682,49 +605,27 @@ resource "unifi_wlan" "test" {
security = "wpapsk"
uapsd = true
}
`, subnet, vlan)
`, name)
}
func testAccWLANConfig_fast_roaming_enabled(name string, subnet *net.IPNet, vlan int, fastRoamingEnabled bool) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "%[1]s"
purpose = "corporate"
subnet = "%[2]s"
vlan_id = %[3]d
}
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "%[1]s"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
ap_group_ids = [data.unifi_ap_group.default.id]
user_group_id = data.unifi_user_group.default.id
security = "wpapsk"
fast_roaming_enabled = %[4]t
fast_roaming_enabled = %[2]t
}
`, name, subnet, vlan, fastRoamingEnabled)
}
func testAccWLANConfig_wpa3(subnet *net.IPNet, vlan int, wpa3Transition bool, pmf string) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name, fastRoamingEnabled)
}
func testAccWLANConfig_wpa3(name string, subnet *net.IPNet, vlan int, wpa3Transition bool, pmf string) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -732,27 +633,16 @@ resource "unifi_wlan" "test" {
security = "wpapsk"
wpa3_support = true
wpa3_transition = %[3]t
pmf_mode = %[4]q
wpa3_transition = %[2]t
pmf_mode = %[3]q
}
`, subnet, vlan, wpa3Transition, pmf)
}
func testAccWLANConfig_minimum_data_rate(subnet *net.IPNet, vlan int, min2g int, min5g int) string {
return fmt.Sprintf(`
data "unifi_ap_group" "default" {}
data "unifi_user_group" "default" {}
resource "unifi_network" "test" {
name = "tfacc"
purpose = "corporate"
subnet = "%[1]s"
vlan_id = %[2]d
`, name, wpa3Transition, pmf)
}
func testAccWLANConfig_minimum_data_rate(name string, subnet *net.IPNet, vlan int, min2g int, min5g int) string {
return testAccWLANBaseConfig(name, subnet, vlan) + fmt.Sprintf(`
resource "unifi_wlan" "test" {
name = "tfacc-wpapsk"
name = "%[1]s-wpapsk"
network_id = unifi_network.test.id
passphrase = "12345678"
ap_group_ids = [data.unifi_ap_group.default.id]
@@ -761,8 +651,8 @@ resource "unifi_wlan" "test" {
multicast_enhance = true
minimum_data_rate_2g_kbps = %[3]d
minimum_data_rate_5g_kbps = %[4]d
minimum_data_rate_2g_kbps = %[2]d
minimum_data_rate_5g_kbps = %[3]d
}
`, subnet, vlan, min2g, min5g)
`, name, min2g, min5g)
}