2012-04-02 20:25:30 +04:00
/*
2014-03-17 13:38:38 +04:00
* Copyright ( C ) 2012 , 2014 Red Hat , Inc .
2012-04-02 20:25:30 +04:00
*
* This library is free software ; you can redistribute it and / or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation ; either
* version 2.1 of the License , or ( at your option ) any later version .
*
* This library is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the GNU
* Lesser General Public License for more details .
*
* You should have received a copy of the GNU Lesser General Public
2012-09-21 02:30:55 +04:00
* License along with this library . If not , see
2012-07-21 14:06:23 +04:00
* < http : //www.gnu.org/licenses/>.
2012-04-02 20:25:30 +04:00
*
* Author : Daniel P . Berrange < berrange @ redhat . com >
*/
# include <config.h>
# include "testutils.h"
2012-12-13 22:21:53 +04:00
# include "virerror.h"
2012-12-12 22:06:53 +04:00
# include "viralloc.h"
2012-12-12 21:59:27 +04:00
# include "virlog.h"
2012-04-02 20:25:30 +04:00
# include "driver.h"
# define VIR_FROM_THIS VIR_FROM_NONE
2014-02-28 16:16:17 +04:00
VIR_LOG_INIT ( " tests.drivermoduletest " ) ;
2012-04-02 20:25:30 +04:00
static int testDriverModule ( const void * args )
{
2015-01-20 19:16:26 +03:00
const char * name = args ;
2012-04-02 20:25:30 +04:00
2013-01-14 19:35:08 +04:00
/* coverity[leaked_storage] */
2015-01-20 19:16:26 +03:00
if ( ! virDriverLoadModule ( name ) )
2012-04-02 20:25:30 +04:00
return - 1 ;
return 0 ;
}
static int
mymain ( void )
{
int ret = 0 ;
# define TEST(name, dep1) \
do { \
2015-01-20 19:16:26 +03:00
if ( virtTestRun ( " Test driver " # name , testDriverModule , name ) < 0 ) \
2012-04-02 20:25:30 +04:00
ret = - 1 ; \
} while ( 0 )
# ifdef WITH_NETWORK
2012-11-21 17:59:47 +04:00
# define USE_NETWORK "network"
2012-04-02 20:25:30 +04:00
TEST ( " network " , NULL ) ;
2012-11-21 17:59:47 +04:00
# else
# define USE_NETWORK NULL
2012-04-02 20:25:30 +04:00
# endif
2014-08-22 13:37:50 +04:00
# ifdef WITH_INTERFACE
TEST ( " interface " , NULL ) ;
# endif
2012-04-02 20:25:30 +04:00
# ifdef WITH_STORAGE
TEST ( " storage " , NULL ) ;
# endif
# ifdef WITH_NODE_DEVICES
TEST ( " nodedev " , NULL ) ;
# endif
# ifdef WITH_SECRETS
TEST ( " secret " , NULL ) ;
# endif
# ifdef WITH_NWFILTER
TEST ( " nwfilter " , NULL ) ;
# endif
2014-08-22 13:37:50 +04:00
# ifdef WITH_XEN
TEST ( " xen " , NULL ) ;
# endif
# ifdef WITH_LIBXL
TEST ( " libxl " , NULL ) ;
2012-04-02 20:25:30 +04:00
# endif
# ifdef WITH_QEMU
2012-11-21 17:59:47 +04:00
TEST ( " qemu " , USE_NETWORK ) ;
2012-04-02 20:25:30 +04:00
# endif
# ifdef WITH_LXC
2012-11-21 17:59:47 +04:00
TEST ( " lxc " , USE_NETWORK ) ;
2012-04-02 20:25:30 +04:00
# endif
# ifdef WITH_UML
TEST ( " uml " , NULL ) ;
# endif
2014-08-22 13:37:50 +04:00
# ifdef WITH_VBOX
TEST ( " vbox " , NULL ) ;
2012-04-02 20:25:30 +04:00
# endif
2014-08-22 13:37:50 +04:00
# ifdef WITH_BHYVE
TEST ( " bhyve " , NULL ) ;
2012-04-02 20:25:30 +04:00
# endif
2014-03-17 13:38:38 +04:00
return ret = = 0 ? EXIT_SUCCESS : EXIT_FAILURE ;
2012-04-02 20:25:30 +04:00
}
VIRT_TEST_MAIN ( mymain )