diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index d0eddb7bc1..f3febc8867 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -407,7 +407,8 @@ testDriverNew(void)
}
-static const char *defaultDomainXML =
+static const char *defaultConnXML =
+""
""
" test"
" 6695eb01-f6a4-8304-79aa-97f2502e193f"
@@ -417,10 +418,8 @@ static const char *defaultDomainXML =
" "
" hvm"
" "
-"";
-
-
-static const char *defaultNetworkXML =
+""
+""
""
" default"
" dd8fe884-6c02-601e-7551-cca97df1c5df"
@@ -431,9 +430,8 @@ static const char *defaultNetworkXML =
" "
" "
" "
-"";
-
-static const char *defaultInterfaceXML =
+""
+""
""
" "
" "
@@ -442,16 +440,34 @@ static const char *defaultInterfaceXML =
" "
" "
" "
-"";
-
-static const char *defaultPoolXML =
+""
+""
""
" default-pool"
" dfe224cb-28fb-8dd0-c4b2-64eb3f0f4566"
" "
" /default-pool"
" "
-"";
+""
+""
+""
+" computer"
+" "
+" "
+" Libvirt"
+" Test driver"
+" 123456"
+" 11111111-2222-3333-4444-555555555555"
+" "
+" "
+" Libvirt"
+" Test Driver"
+" 01/22/2007"
+" "
+" "
+""
+"";
+
static const char *defaultPoolSourcesLogicalXML =
"\n"
@@ -476,24 +492,6 @@ static const char *defaultPoolSourcesNetFSXML =
" \n"
"\n";
-static const char *defaultNodeXML =
-""
-" computer"
-" "
-" "
-" Libvirt"
-" Test driver"
-" 123456"
-" 11111111-2222-3333-4444-555555555555"
-" "
-" "
-" Libvirt"
-" Test Driver"
-" 01/22/2007"
-" "
-" "
-"";
-
static const unsigned long long defaultPoolCap = (100 * 1024 * 1024 * 1024ull);
static const unsigned long long defaultPoolAlloc;
@@ -1239,16 +1237,8 @@ testOpenDefault(virConnectPtr conn)
{
int u;
testDriverPtr privconn = NULL;
- virDomainDefPtr domdef = NULL;
- virDomainObjPtr domobj = NULL;
- virNetworkDefPtr netdef = NULL;
- virNetworkObjPtr netobj = NULL;
- virInterfaceDefPtr interfacedef = NULL;
- virInterfaceObjPtr interfaceobj = NULL;
- virStoragePoolDefPtr pooldef = NULL;
- virStoragePoolObjPtr poolobj = NULL;
- virNodeDeviceDefPtr nodedef = NULL;
- virNodeDeviceObjPtr nodeobj = NULL;
+ xmlDocPtr doc = NULL;
+ xmlXPathContextPtr ctxt = NULL;
virMutexLock(&defaultLock);
if (defaultConnections++) {
@@ -1284,84 +1274,26 @@ testOpenDefault(virConnectPtr conn)
if (!(privconn->caps = testBuildCapabilities(conn)))
goto error;
- if (!(domdef = virDomainDefParseString(defaultDomainXML,
- privconn->caps,
- privconn->xmlopt,
- VIR_DOMAIN_DEF_PARSE_INACTIVE)))
+ if (!(doc = virXMLParseStringCtxt(defaultConnXML,
+ _("(test driver)"), &ctxt)))
goto error;
- if (testDomainGenerateIfnames(domdef) < 0)
+ if (testOpenParse(privconn, NULL, ctxt) < 0)
goto error;
- if (!(domobj = virDomainObjListAdd(privconn->domains,
- domdef,
- privconn->xmlopt,
- 0, NULL)))
- goto error;
- domdef = NULL;
-
- domobj->persistent = 1;
- if (testDomainStartState(privconn, domobj,
- VIR_DOMAIN_RUNNING_BOOTED) < 0) {
- virObjectUnlock(domobj);
- goto error;
- }
-
- virObjectUnlock(domobj);
-
- if (!(netdef = virNetworkDefParseString(defaultNetworkXML)))
- goto error;
- if (!(netobj = virNetworkAssignDef(privconn->networks, netdef, 0))) {
- virNetworkDefFree(netdef);
- goto error;
- }
- netobj->active = 1;
- virNetworkObjEndAPI(&netobj);
-
- if (!(interfacedef = virInterfaceDefParseString(defaultInterfaceXML)))
- goto error;
- if (!(interfaceobj = virInterfaceAssignDef(&privconn->ifaces, interfacedef))) {
- virInterfaceDefFree(interfacedef);
- goto error;
- }
- interfaceobj->active = 1;
- virInterfaceObjUnlock(interfaceobj);
-
- if (!(pooldef = virStoragePoolDefParseString(defaultPoolXML)))
- goto error;
-
- if (!(poolobj = virStoragePoolObjAssignDef(&privconn->pools,
- pooldef))) {
- virStoragePoolDefFree(pooldef);
- goto error;
- }
-
- if (testStoragePoolObjSetDefaults(poolobj) == -1) {
- virStoragePoolObjUnlock(poolobj);
- goto error;
- }
- poolobj->active = 1;
- virStoragePoolObjUnlock(poolobj);
-
- /* Init default node device */
- if (!(nodedef = virNodeDeviceDefParseString(defaultNodeXML, 0, NULL)))
- goto error;
- if (!(nodeobj = virNodeDeviceAssignDef(&privconn->devs,
- nodedef))) {
- virNodeDeviceDefFree(nodedef);
- goto error;
- }
- virNodeDeviceObjUnlock(nodeobj);
defaultConn = privconn;
+ xmlXPathFreeContext(ctxt);
+ xmlFreeDoc(doc);
virMutexUnlock(&defaultLock);
return VIR_DRV_OPEN_SUCCESS;
error:
testDriverFree(privconn);
+ xmlXPathFreeContext(ctxt);
+ xmlFreeDoc(doc);
conn->privateData = NULL;
- virDomainDefFree(domdef);
defaultConnections--;
virMutexUnlock(&defaultLock);
return VIR_DRV_OPEN_ERROR;