Skip to content

Commit d3488bf

Browse files
committed
Add an acceptance test
1 parent 582246f commit d3488bf

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed

xoa/resource_xenorchestra_vm_test.go

+51
Original file line numberDiff line numberDiff line change
@@ -576,6 +576,27 @@ func TestAccXenorchestraVm_createWithDisklessTemplateAndISO(t *testing.T) {
576576
})
577577
}
578578

579+
func TestAccXenorchestraVm_createWithoutDisks(t *testing.T) {
580+
resourceName := "xenorchestra_vm.bar"
581+
vmName := fmt.Sprintf("%s - %s", accTestPrefix, t.Name())
582+
resource.ParallelTest(t, resource.TestCase{
583+
PreCheck: func() { testAccPreCheck(t) },
584+
Providers: testAccProviders,
585+
CheckDestroy: testAccCheckXenorchestraVmDestroy,
586+
Steps: []resource.TestStep{
587+
{
588+
Config: testAccVmConfigWithoutDisks(vmName),
589+
Check: resource.ComposeAggregateTestCheckFunc(
590+
testAccVmExists(resourceName),
591+
resource.TestCheckResourceAttrSet(resourceName, "id"),
592+
resource.TestCheckResourceAttr(resourceName, "cdrom.#", "1"),
593+
internal.TestCheckTypeSetElemAttrPair(resourceName, "cdrom.0.*", "data.xenorchestra_vdi.iso", "id"),
594+
),
595+
},
596+
},
597+
})
598+
}
599+
579600
func TestAccXenorchestraVm_insertAndEjectCd(t *testing.T) {
580601
resourceName := "xenorchestra_vm.bar"
581602
vmName := fmt.Sprintf("%s - %s", accTestPrefix, t.Name())
@@ -1542,6 +1563,36 @@ resource "xenorchestra_vm" "bar" {
15421563
`, testIsoName, accTestPool.Id, accDefaultNetwork.NameLabel, accTestPool.Id, vmName, accDefaultSr.Id)
15431564
}
15441565

1566+
func testAccVmConfigWithoutDisks(vmName string) string {
1567+
return testAccCloudConfigConfig(fmt.Sprintf("vm-template-%s", vmName), "template") + testAccNonDefaultTemplateConfig(disklessTestTemplate.NameLabel) + fmt.Sprintf(`
1568+
data "xenorchestra_vdi" "iso" {
1569+
name_label = "%s"
1570+
pool_id = "%s"
1571+
}
1572+
1573+
data "xenorchestra_network" "network" {
1574+
name_label = "%s"
1575+
pool_id = "%s"
1576+
}
1577+
1578+
resource "xenorchestra_vm" "bar" {
1579+
memory_max = 4295000000
1580+
cpus = 1
1581+
cloud_config = "${xenorchestra_cloud_config.bar.template}"
1582+
name_label = "%s"
1583+
name_description = "description"
1584+
template = "${data.xenorchestra_template.template.id}"
1585+
network {
1586+
network_id = "${data.xenorchestra_network.network.id}"
1587+
}
1588+
1589+
cdrom {
1590+
id = data.xenorchestra_vdi.iso.id
1591+
}
1592+
}
1593+
`, testIsoName, accTestPool.Id, accDefaultNetwork.NameLabel, accTestPool.Id, vmName, accDefaultSr.Id)
1594+
}
1595+
15451596
func testAccVmConfigWithoutISO(vmName string) string {
15461597
return testAccCloudConfigConfig(fmt.Sprintf("vm-template-%s", vmName), "template") + testAccNonDefaultTemplateConfig(disklessTestTemplate.NameLabel) + fmt.Sprintf(`
15471598

0 commit comments

Comments
 (0)