// Code generated by "gen/generator.go"; DO NOT EDIT.
// In order to regenerate this file execute `go generate` from the repository root.
// More details can be found in the [README](https://github.com/CiscoDevNet/terraform-provider-aci/blob/master/README.md).

package provider

import (
	"regexp"
	"testing"

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

func TestAccResourceFvSiteAssociatedWithFvAEPg(t *testing.T) {

	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvAEPgAllowExisting,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "site_id", "0"),
				),
			},
		},
	})

	setEnvVariable(t, "ACI_ALLOW_EXISTING_ON_CREATE", "false")
	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:      testConfigFvSiteAssociatedMinDependencyWithFvAEPgAllowExisting,
				ExpectError: regexp.MustCompile("Object Already Exists"),
			},
		},
	})

	setEnvVariable(t, "ACI_ALLOW_EXISTING_ON_CREATE", "true")
	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvAEPgAllowExisting,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "site_id", "0"),
				),
			},
		},
	})

	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
				),
			},
			// Update with all config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedAllDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "annotation"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
				),
			},
			// Update with minimum config and verify config is unchanged
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check:              resource.ComposeAggregateTestCheckFunc(),
			},
			// Update with empty strings config or default value
			{
				Config:             testConfigFvSiteAssociatedResetDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check:              resource.ComposeAggregateTestCheckFunc(),
			},
			// Import testing
			{
				ResourceName:      "aci_associated_site.test",
				ImportState:       true,
				ImportStateVerify: true,
			},
			// Update with children
			{
				Config:             testConfigFvSiteAssociatedChildrenDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16386"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.value", "test_value"),
				),
			},
			// Refresh State before import testing to ensure that the state is up to date
			{
				RefreshState:       true,
				ExpectNonEmptyPlan: false,
			},
			// Import testing with children
			{
				ResourceName:      "aci_associated_site.test",
				ImportState:       true,
				ImportStateVerify: true,
			},
			// Update with children removed from config
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveFromConfigDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16386"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
				),
			},
			// Update with children first child removed
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveOneDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "1"),
				),
			},
			// Update with all children removed
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveAllDependencyWithFvAEPg,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "0"),
				),
			},
		},
		CheckDestroy: testCheckResourceDestroy,
	})
}
func TestAccResourceFvSiteAssociatedWithFvBD(t *testing.T) {

	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvBDAllowExisting,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "site_id", "0"),
				),
			},
		},
	})

	setEnvVariable(t, "ACI_ALLOW_EXISTING_ON_CREATE", "false")
	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:      testConfigFvSiteAssociatedMinDependencyWithFvBDAllowExisting,
				ExpectError: regexp.MustCompile("Object Already Exists"),
			},
		},
	})

	setEnvVariable(t, "ACI_ALLOW_EXISTING_ON_CREATE", "true")
	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvBDAllowExisting,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.allow_test_2", "site_id", "0"),
				),
			},
		},
	})

	resource.Test(t, resource.TestCase{
		PreCheck:                 func() { testAccPreCheck(t, "both", "3.0(1k)-") },
		ProtoV6ProviderFactories: testAccProtoV6ProviderFactories,
		Steps: []resource.TestStep{
			// Create with minimum config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
				),
			},
			// Update with all config and verify default APIC values
			{
				Config:             testConfigFvSiteAssociatedAllDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "annotation"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
				),
			},
			// Update with minimum config and verify config is unchanged
			{
				Config:             testConfigFvSiteAssociatedMinDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check:              resource.ComposeAggregateTestCheckFunc(),
			},
			// Update with empty strings config or default value
			{
				Config:             testConfigFvSiteAssociatedResetDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check:              resource.ComposeAggregateTestCheckFunc(),
			},
			// Import testing
			{
				ResourceName:      "aci_associated_site.test",
				ImportState:       true,
				ImportStateVerify: true,
			},
			// Update with children
			{
				Config:             testConfigFvSiteAssociatedChildrenDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotation", "orchestrator:terraform"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "description", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "name_alias", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_key", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "owner_tag", ""),
					resource.TestCheckResourceAttr("aci_associated_site.test", "site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16386"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.value", "test_value"),
				),
			},
			// Refresh State before import testing to ensure that the state is up to date
			{
				RefreshState:       true,
				ExpectNonEmptyPlan: false,
			},
			// Import testing with children
			{
				ResourceName:      "aci_associated_site.test",
				ImportState:       true,
				ImportStateVerify: true,
			},
			// Update with children removed from config
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveFromConfigDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16386"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.annotations.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.1.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "value_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.1.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "2"),
				),
			},
			// Update with children first child removed
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveOneDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotation", "annotation_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.annotations.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.tags.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.description", "description_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name", "name_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.name_alias", "name_alias_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_key", "owner_key_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.owner_tag", "owner_tag_2"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_pc_tag", "16387"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.remote_vrf_pc_tag", "any"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.0.site_id", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.key", "key_1"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.0.value", "test_value"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "1"),
				),
			},
			// Update with all children removed
			{
				Config:             testConfigFvSiteAssociatedChildrenRemoveAllDependencyWithFvBD,
				ExpectNonEmptyPlan: false,
				Check: resource.ComposeAggregateTestCheckFunc(
					resource.TestCheckResourceAttr("aci_associated_site.test", "annotations.#", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "remote_sites.#", "0"),
					resource.TestCheckResourceAttr("aci_associated_site.test", "tags.#", "0"),
				),
			},
		},
		CheckDestroy: testCheckResourceDestroy,
	})
}

const testConfigFvSiteAssociatedMinDependencyWithFvAEPgAllowExisting = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "allow_test" {
  parent_dn = aci_application_epg.test.id
}
resource "aci_associated_site" "allow_test_2" {
  parent_dn = aci_application_epg.test.id
  depends_on = [aci_associated_site.allow_test]
}
`

const testConfigFvSiteAssociatedMinDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
}
`

const testConfigFvSiteAssociatedAllDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
  annotation = "annotation"
  description = "description_1"
  name = "name_1"
  name_alias = "name_alias_1"
  owner_key = "owner_key_1"
  owner_tag = "owner_tag_1"
  site_id = "0"
}
`

const testConfigFvSiteAssociatedResetDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
  annotation = "orchestrator:terraform"
  description = ""
  name = ""
  name_alias = ""
  owner_key = ""
  owner_tag = ""
  site_id = "0"
}
`
const testConfigFvSiteAssociatedChildrenDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
  annotations = [
    {
      key = "key_0"
      value = "value_1"
    },
    {
      key = "key_1"
      value = "test_value"
    },
  ]
  remote_sites = [
    {
      annotation = "annotation_1"
      annotations = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      description = "description_1"
      name = "name_1"
      name_alias = "name_alias_1"
      owner_key = "owner_key_1"
      owner_tag = "owner_tag_1"
      remote_pc_tag = "16386"
      remote_vrf_pc_tag = "any"
      site_id = "0"
    },
    {
      annotation = "annotation_2"
      annotations = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      description = "description_2"
      name = "name_2"
      name_alias = "name_alias_2"
      owner_key = "owner_key_2"
      owner_tag = "owner_tag_2"
      remote_pc_tag = "16387"
      remote_vrf_pc_tag = "any"
      site_id = "1"
    },
  ]
  tags = [
    {
      key = "key_0"
      value = "value_1"
    },
    {
      key = "key_1"
      value = "test_value"
    },
  ]
}
`

const testConfigFvSiteAssociatedChildrenRemoveFromConfigDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
}
`

const testConfigFvSiteAssociatedChildrenRemoveOneDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
  annotations = [ 
	{
	  key = "key_1"
	  value = "test_value"
	},
  ]
  remote_sites = [ 
	{
	  annotation = "annotation_2"
      annotations = [ 
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [ 
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
	  description = "description_2"
	  name = "name_2"
	  name_alias = "name_alias_2"
	  owner_key = "owner_key_2"
	  owner_tag = "owner_tag_2"
	  remote_pc_tag = "16387"
	  remote_vrf_pc_tag = "any"
	  site_id = "1"
	},
  ]
  tags = [ 
	{
	  key = "key_1"
	  value = "test_value"
	},
  ]
}
`

const testConfigFvSiteAssociatedChildrenRemoveAllDependencyWithFvAEPg = testConfigFvAEPgMinDependencyWithFvAp + `
resource "aci_associated_site" "test" {
  parent_dn = aci_application_epg.test.id
  annotations = []
  remote_sites = []
  tags = []
}
`

const testConfigFvSiteAssociatedMinDependencyWithFvBDAllowExisting = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "allow_test" {
  parent_dn = aci_bridge_domain.test.id
}
resource "aci_associated_site" "allow_test_2" {
  parent_dn = aci_bridge_domain.test.id
  depends_on = [aci_associated_site.allow_test]
}
`

const testConfigFvSiteAssociatedMinDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
}
`

const testConfigFvSiteAssociatedAllDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
  annotation = "annotation"
  description = "description_1"
  name = "name_1"
  name_alias = "name_alias_1"
  owner_key = "owner_key_1"
  owner_tag = "owner_tag_1"
  site_id = "0"
}
`

const testConfigFvSiteAssociatedResetDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
  annotation = "orchestrator:terraform"
  description = ""
  name = ""
  name_alias = ""
  owner_key = ""
  owner_tag = ""
  site_id = "0"
}
`
const testConfigFvSiteAssociatedChildrenDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
  annotations = [
    {
      key = "key_0"
      value = "value_1"
    },
    {
      key = "key_1"
      value = "test_value"
    },
  ]
  remote_sites = [
    {
      annotation = "annotation_1"
      annotations = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      description = "description_1"
      name = "name_1"
      name_alias = "name_alias_1"
      owner_key = "owner_key_1"
      owner_tag = "owner_tag_1"
      remote_pc_tag = "16386"
      remote_vrf_pc_tag = "any"
      site_id = "0"
    },
    {
      annotation = "annotation_2"
      annotations = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [
	    {
          key = "key_0"
          value = "value_1"
	    },
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      description = "description_2"
      name = "name_2"
      name_alias = "name_alias_2"
      owner_key = "owner_key_2"
      owner_tag = "owner_tag_2"
      remote_pc_tag = "16387"
      remote_vrf_pc_tag = "any"
      site_id = "1"
    },
  ]
  tags = [
    {
      key = "key_0"
      value = "value_1"
    },
    {
      key = "key_1"
      value = "test_value"
    },
  ]
}
`

const testConfigFvSiteAssociatedChildrenRemoveFromConfigDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
}
`

const testConfigFvSiteAssociatedChildrenRemoveOneDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
  annotations = [ 
	{
	  key = "key_1"
	  value = "test_value"
	},
  ]
  remote_sites = [ 
	{
	  annotation = "annotation_2"
      annotations = [ 
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
      tags = [ 
	    {
          key = "key_1"
          value = "test_value"
	    },
      ]
	  description = "description_2"
	  name = "name_2"
	  name_alias = "name_alias_2"
	  owner_key = "owner_key_2"
	  owner_tag = "owner_tag_2"
	  remote_pc_tag = "16387"
	  remote_vrf_pc_tag = "any"
	  site_id = "1"
	},
  ]
  tags = [ 
	{
	  key = "key_1"
	  value = "test_value"
	},
  ]
}
`

const testConfigFvSiteAssociatedChildrenRemoveAllDependencyWithFvBD = testConfigFvBDMinDependencyWithFvTenant + `
resource "aci_associated_site" "test" {
  parent_dn = aci_bridge_domain.test.id
  annotations = []
  remote_sites = []
  tags = []
}
`
