@@ -182,26 +182,40 @@ func TestAccMSOSchemaTemplateVrfResource(t *testing.T) {
182182 ),
183183 },
184184 {
185- PreConfig : func () { fmt .Println ("Test: Add BD child to VRF" ) },
186- Config : testAccMSOSchemaTemplateVrfConfigWithBdChild (),
185+ PreConfig : func () { fmt .Println ("Test: Add BD and contract children to VRF" ) },
186+ Config : testAccMSOSchemaTemplateVrfConfigWithChildren (),
187187 Check : resource .ComposeAggregateTestCheckFunc (
188188 resource .TestCheckResourceAttrSet ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "schema_id" ),
189189 resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "name" , msoSchemaTemplateVrfName ),
190190 resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "display_name" , msoSchemaTemplateVrfName + " updated" ),
191191 resource .TestCheckResourceAttr ("mso_schema_template_bd." + msoSchemaTemplateBdName , "name" , msoSchemaTemplateBdName ),
192192 resource .TestCheckResourceAttr ("mso_schema_template_bd." + msoSchemaTemplateBdName , "display_name" , msoSchemaTemplateBdName ),
193+ resource .TestCheckResourceAttr ("mso_schema_template_vrf_contract." + msoSchemaTemplateContractName + "_provider" , "contract_name" , msoSchemaTemplateContractName ),
194+ resource .TestCheckResourceAttr ("mso_schema_template_vrf_contract." + msoSchemaTemplateContractName + "_provider" , "relationship_type" , "provider" ),
193195 ),
194196 },
195197 {
196- PreConfig : func () { fmt .Println ("Test: Update VRF description with BD child present" ) },
197- Config : testAccMSOSchemaTemplateVrfConfigWithBdChildUpdateDescription (),
198+ PreConfig : func () { fmt .Println ("Test: Update VRF description with children present" ) },
199+ Config : testAccMSOSchemaTemplateVrfConfigWithChildrenUpdateDescription (),
198200 Check : resource .ComposeAggregateTestCheckFunc (
199201 resource .TestCheckResourceAttrSet ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "schema_id" ),
200202 resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "name" , msoSchemaTemplateVrfName ),
201203 resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "display_name" , msoSchemaTemplateVrfName + " updated" ),
202- resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "description" , "Terraform test VRF with BD " ),
204+ resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "description" , "Terraform test VRF with children " ),
203205 resource .TestCheckResourceAttr ("mso_schema_template_bd." + msoSchemaTemplateBdName , "name" , msoSchemaTemplateBdName ),
204206 resource .TestCheckResourceAttr ("mso_schema_template_bd." + msoSchemaTemplateBdName , "display_name" , msoSchemaTemplateBdName ),
207+ resource .TestCheckResourceAttr ("mso_schema_template_vrf_contract." + msoSchemaTemplateContractName + "_provider" , "contract_name" , msoSchemaTemplateContractName ),
208+ resource .TestCheckResourceAttr ("mso_schema_template_vrf_contract." + msoSchemaTemplateContractName + "_provider" , "relationship_type" , "provider" ),
209+ ),
210+ },
211+ {
212+ PreConfig : func () { fmt .Println ("Test: Remove children from VRF" ) },
213+ Config : testAccMSOSchemaTemplateVrfConfigRemoveChildren (),
214+ Check : resource .ComposeAggregateTestCheckFunc (
215+ resource .TestCheckResourceAttrSet ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "schema_id" ),
216+ resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "name" , msoSchemaTemplateVrfName ),
217+ resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "display_name" , msoSchemaTemplateVrfName + " updated" ),
218+ resource .TestCheckResourceAttr ("mso_schema_template_vrf." + msoSchemaTemplateVrfName , "description" , "Terraform test VRF with children" ),
205219 ),
206220 },
207221 },
@@ -337,19 +351,34 @@ func testAccMSOSchemaTemplateVrfConfigRemoveAllRps() string {
337351 }` , testAccMSOSchemaTemplateVrfPrerequisiteConfig (), msoSchemaTemplateVrfName , msoSchemaName , msoSchemaTemplateName )
338352}
339353
340- func testAccMSOSchemaTemplateVrfConfigWithBdChild () string {
341- return testAccMSOSchemaTemplateVrfConfigUpdateDisplayName () + testSchemaTemplateBdConfig ()
354+ func testAccMSOSchemaTemplateVrfChildrenConfig () string {
355+ return testSchemaTemplateBdConfig () + testSchemaTemplateFilterEntryConfig () + testSchemaTemplateContractConfig () + testSchemaTemplateVrfContractConfig ()
356+ }
357+
358+ func testAccMSOSchemaTemplateVrfConfigWithChildren () string {
359+ return testAccMSOSchemaTemplateVrfConfigUpdateDisplayName () + testAccMSOSchemaTemplateVrfChildrenConfig ()
342360}
343361
344- func testAccMSOSchemaTemplateVrfConfigWithBdChildUpdateDescription () string {
362+ func testAccMSOSchemaTemplateVrfConfigWithChildrenUpdateDescription () string {
345363 return fmt .Sprintf (`%[1]s
346364 resource "mso_schema_template_vrf" "%[2]s" {
347365 schema_id = mso_schema.%[3]s.id
348366 template = "%[4]s"
349367 name = "%[2]s"
350368 display_name = "%[2]s updated"
351- description = "Terraform test VRF with BD"
352- }` , testAccMSOSchemaTemplateVrfPrerequisiteConfig (), msoSchemaTemplateVrfName , msoSchemaName , msoSchemaTemplateName ) + testSchemaTemplateBdConfig ()
369+ description = "Terraform test VRF with children"
370+ }` , testAccMSOSchemaTemplateVrfPrerequisiteConfig (), msoSchemaTemplateVrfName , msoSchemaName , msoSchemaTemplateName ) + testAccMSOSchemaTemplateVrfChildrenConfig ()
371+ }
372+
373+ func testAccMSOSchemaTemplateVrfConfigRemoveChildren () string {
374+ return fmt .Sprintf (`%[1]s
375+ resource "mso_schema_template_vrf" "%[2]s" {
376+ schema_id = mso_schema.%[3]s.id
377+ template = "%[4]s"
378+ name = "%[2]s"
379+ display_name = "%[2]s updated"
380+ description = "Terraform test VRF with children"
381+ }` , testAccMSOSchemaTemplateVrfPrerequisiteConfig (), msoSchemaTemplateVrfName , msoSchemaName , msoSchemaTemplateName )
353382}
354383
355384func testAccCheckMSOSchemaTemplateVrfDestroy (s * terraform.State ) error {
0 commit comments