Skip to content

Commit

Permalink
Merge pull request #222 from nutanix/test/karbon
Browse files Browse the repository at this point in the history
Add testacc for karbon resources and data sources
  • Loading branch information
marinsalinas authored Dec 23, 2020
2 parents ab435d9 + 514278c commit 8ab5e8e
Show file tree
Hide file tree
Showing 6 changed files with 519 additions and 1 deletion.
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

0 comments on commit 8ab5e8e

Please sign in to comment.