Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add testacc for karbon resources and data sources #222

Merged
merged 7 commits into from
Dec 23, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 67 additions & 0 deletions nutanix/data_source_nutanix_karbon_cluster_kubeconfig_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
package nutanix

import (
"fmt"
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/acctest"
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
)

func TestAccNutanixKarbonClusterKubeConfigDataSource_basic(t *testing.T) {
r := acctest.RandInt()
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterKubeConfigDataSourceConfig(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster_kubeconfig.config", "id"),
resource.TestCheckResourceAttr(
"data.nutanix_karbon_cluster_kubeconfig.config", "karbon_cluster_name", fmt.Sprintf("test-karbon-%d", r)),
),
},
},
})
}

func TestAccNutanixKarbonClusterKubeConfigDataSource_basicByName(t *testing.T) {
r := acctest.RandInt()
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterKubeConfigDataSourceConfigByName(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster_kubeconfig.config", "id"),
resource.TestCheckResourceAttr(
"data.nutanix_karbon_cluster_kubeconfig.config", "karbon_cluster_name", fmt.Sprintf("test-karbon-%d", r)),
),
},
},
})
}

func testAccKarbonClusterKubeConfigDataSourceConfig(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster_kubeconfig" "config" {
karbon_cluster_id = nutanix_karbon_cluster.cluster.id
}
`
}

func testAccKarbonClusterKubeConfigDataSourceConfigByName(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster_kubeconfig" "config" {
karbon_cluster_name = nutanix_karbon_cluster.cluster.name
}
`
}
3 changes: 2 additions & 1 deletion nutanix/data_source_nutanix_karbon_cluster_ssh.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package nutanix

import (
"errors"
"fmt"

"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
Expand All @@ -24,7 +25,7 @@ func dataSourceNutanixKarbonClusterSSHRead(d *schema.ResourceData, meta interfac
karbonClusterID, iok := d.GetOk("karbon_cluster_id")
karbonClusterNameInput, nok := d.GetOk("karbon_cluster_name")
if !iok && !nok {
return fmt.Errorf("please provide one of karbon_cluster_id or karbon_cluster_name attributes")
return errors.New("please provide one of karbon_cluster_id or karbon_cluster_name attributes")
}
var err error
var resp *karbon.ClusterSSHconfig
Expand Down
68 changes: 68 additions & 0 deletions nutanix/data_source_nutanix_karbon_cluster_ssh_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
package nutanix

import (
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/acctest"
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
)

func TestAccNutanixKarbonClusterSSHDataSource_basicx(t *testing.T) {
r := acctest.RandInt()
//resourceName := "nutanix_karbon_cluster.cluster"
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterSSHDataSourceConfig(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster_ssh.ssh", "id"),
resource.TestCheckResourceAttr(
"data.nutanix_karbon_cluster_ssh.ssh", "username", "admin"),
),
},
},
})
}

func TestAccNutanixKarbonClusterSSHDataSource_basicByName(t *testing.T) {
r := acctest.RandInt()
//resourceName := "nutanix_karbon_cluster.cluster"
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterSSHDataSourceConfigByName(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster_ssh.ssh", "id"),
resource.TestCheckResourceAttr(
"data.nutanix_karbon_cluster_ssh.ssh", "username", "admin"),
),
},
},
})
}

func testAccKarbonClusterSSHDataSourceConfig(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster_ssh" "ssh" {
karbon_cluster_id = nutanix_karbon_cluster.cluster.id
}
`
}

func testAccKarbonClusterSSHDataSourceConfigByName(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster_ssh" "ssh" {
karbon_cluster_name = nutanix_karbon_cluster.cluster.name
}
`
}
65 changes: 65 additions & 0 deletions nutanix/data_source_nutanix_karbon_cluster_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
package nutanix

import (
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/acctest"
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
)

func TestAccNutanixKarbonClusterDataSource_basic(t *testing.T) {
r := acctest.RandInt()
dataSourceName := "data.nutanix_karbon_cluster.kcluster"
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterDataSourceConfig(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
testAccCheckNutanixKarbonClusterExists(dataSourceName),
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster.kcluster", "id"),
),
},
},
})
}

func TestAccNutanixKarbonClusterDataSource_basicByName(t *testing.T) {
r := acctest.RandInt()
//resourceName := "nutanix_karbon_cluster.cluster"
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClusterDataSourceConfigByName(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_cluster.kcluster", "id"),
),
},
},
})
}

func testAccKarbonClusterDataSourceConfig(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster" "kcluster" {
karbon_cluster_id = nutanix_karbon_cluster.cluster.id
}
`
}

func testAccKarbonClusterDataSourceConfigByName(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_cluster" "kcluster" {
karbon_cluster_name = nutanix_karbon_cluster.cluster.name
}
`
}
35 changes: 35 additions & 0 deletions nutanix/data_source_nutanix_karbon_clusters_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package nutanix

import (
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/acctest"
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
)

func TestAccNutanixKarbonClustersDataSource_basic(t *testing.T) {
r := acctest.RandInt()
//resourceName := "nutanix_karbon_cluster.cluster"
subnetName := "Rx-Automation-Network"
defaultContainter := "default-container-85827904983728"
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccKarbonClustersDataSourceConfig(subnetName, r, defaultContainter, 1),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(
"data.nutanix_karbon_clusters.kclusters", "clusters.#"),
),
},
},
})
}

func testAccKarbonClustersDataSourceConfig(subnetName string, r int, containter string, workers int) string {
return testAccNutanixKarbonClusterConfig(subnetName, r, containter, workers, "flannel") + `
data "nutanix_karbon_clusters" "kclusters" {}

`
}
Loading