On Fri, Apr 19, 2013 at 12:49:23PM +0200, Michal Privoznik wrote:
> This test is meant for adding CDROM, floppy and disk to a domain.
> For now, each method has _file and _device variant, which are
> tested for now.

Oh, thanks for writing that testcase!

ACK

Christophe

> ---
>  libvirt-designer/test-designer-domain.c | 101 
> ++++++++++++++++++++++++++++++++
>  1 file changed, 101 insertions(+)
> 
> diff --git a/libvirt-designer/test-designer-domain.c 
> b/libvirt-designer/test-designer-domain.c
> index bbd5a28..90f7e68 100644
> --- a/libvirt-designer/test-designer-domain.c
> +++ b/libvirt-designer/test-designer-domain.c
> @@ -125,6 +125,41 @@ static const gchar *capslxcxml =
>      "  </guest>"
>      "</capabilities>";
>  
> +static const gchar *domain_machine_simple_iso_result =
> +    "<domain>\n"
> +    "  <devices>\n"
> +    "    <disk type=\"file\">\n"
> +    "      <source file=\"/foo/bar1\"/>\n"
> +    "      <driver name=\"qemu\" type=\"raw\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hda\"/>\n"
> +    "    </disk>\n"
> +    "    <disk type=\"block\">\n"
> +    "      <source dev=\"/foo/bar2\"/>\n"
> +    "      <driver name=\"qemu\" type=\"raw\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hdb\"/>\n"
> +    "    </disk>\n"
> +    "    <disk type=\"file\">\n"
> +    "      <source file=\"/foo/bar3\"/>\n"
> +    "      <driver name=\"qemu\" type=\"qcow2\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hdc\"/>\n"
> +    "    </disk>\n"
> +    "    <disk type=\"block\">\n"
> +    "      <source dev=\"/foo/bar4\"/>\n"
> +    "      <driver name=\"qemu\" type=\"raw\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hdd\"/>\n"
> +    "    </disk>\n"
> +    "    <disk type=\"file\">\n"
> +    "      <source file=\"/foo/bar5\"/>\n"
> +    "      <driver name=\"qemu\" type=\"bochs\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hde\"/>\n"
> +    "    </disk>\n"
> +    "    <disk type=\"block\">\n"
> +    "      <source dev=\"/foo/bar6\"/>\n"
> +    "      <driver name=\"qemu\" type=\"raw\"/>\n"
> +    "      <target bus=\"ide\" dev=\"hdf\"/>\n"
> +    "    </disk>\n"
> +    "  </devices>\n"
> +    "</domain>";
>  
>  static void test_domain_machine_setup(GVirDesignerDomain **design, 
> gconstpointer opaque)
>  {
> @@ -142,6 +177,49 @@ static void test_domain_machine_setup(GVirDesignerDomain 
> **design, gconstpointer
>  }
>  
>  
> +static void test_domain_machine_simple_disk_setup(GVirDesignerDomain 
> **design, gconstpointer opaque)
> +{
> +    GError *error = NULL;
> +    GVirConfigDomainDisk *disk;
> +    OsinfoOs *os = osinfo_os_new("http://myoperatingsystem/amazing/4.2";);
> +    OsinfoDb *db = osinfo_db_new();
> +    OsinfoPlatform *platform = 
> osinfo_platform_new("http://myhypervisor.org/awesome/6.6.6";);
> +    GVirConfigCapabilities *caps = 
> gvir_config_capabilities_new_from_xml(capsqemuxml, NULL);
> +
> +    *design = gvir_designer_domain_new(db, os, platform, caps);
> +    g_assert(*design);
> +
> +    disk = gvir_designer_domain_add_cdrom_file(*design, "/foo/bar1", "raw", 
> &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    disk = gvir_designer_domain_add_cdrom_device(*design, "/foo/bar2", 
> &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    disk = gvir_designer_domain_add_disk_file(*design, "/foo/bar3", "qcow2", 
> &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    disk = gvir_designer_domain_add_disk_device(*design, "/foo/bar4", 
> &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    disk = gvir_designer_domain_add_floppy_file(*design, "/foo/bar5", 
> "bochs", &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    disk = gvir_designer_domain_add_disk_device(*design, "/foo/bar6", 
> &error);
> +    g_assert(disk);
> +    g_object_unref(disk);
> +
> +    g_object_unref(os);
> +    g_object_unref(db);
> +    g_object_unref(platform);
> +    g_object_unref(caps);
> +}
> +
> +
>  static void test_domain_container_setup(GVirDesignerDomain **design, 
> gconstpointer opaque)
>  {
>      OsinfoOs *os = osinfo_os_new("http://myoperatingsystem/amazing/4.2";);
> @@ -243,6 +321,22 @@ static void 
> test_domain_machine_alt_arch_run(GVirDesignerDomain **design, gconst
>      g_object_unref(osconfig);
>  }
>  
> +static void test_domain_machine_simple_disk_run(GVirDesignerDomain **design, 
> gconstpointer opaque)
> +{
> +    GError *error = NULL;
> +    gboolean ret;
> +    GVirConfigDomain *config;
> +    gchar *xml;
> +
> +    config = gvir_designer_domain_get_config(*design);
> +    xml = gvir_config_object_to_xml(GVIR_CONFIG_OBJECT(config));
> +    g_test_message("XML %s", xml);
> +    g_assert_cmpstr(xml,
> +                    ==,
> +                    domain_machine_simple_iso_result);
> +    g_free(xml);
> +}
> +
>  static void test_domain_container_host_arch_run(GVirDesignerDomain **design, 
> gconstpointer opaque)
>  {
>      GError *error = NULL;
> @@ -362,5 +456,12 @@ int main(int argc, char **argv)
>                 test_domain_container_setup,
>                 test_domain_container_alt_arch_run,
>                 test_domain_teardown);
> +    g_test_add("/TestDesignerDomain/SimpleDisk",
> +               GVirDesignerDomain *,
> +               &domain,
> +               test_domain_machine_simple_disk_setup,
> +               test_domain_machine_simple_disk_run,
> +               test_domain_teardown);
> +
>      return g_test_run();
>  }
> -- 
> 1.8.1.5
> 
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list

Attachment: pgpX5J2LW56Yz.pgp
Description: PGP signature

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to