2018-03-22 17:07:43 +01:00
/*
* testutilsqemuschema . h : helper functions for QEMU QAPI schema testing
*
* 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
* License along with this library . If not , see
* < http : //www.gnu.org/licenses/>.
*/
2019-06-18 11:13:14 -05:00
# pragma once
2018-12-13 13:32:06 +00:00
2019-06-18 11:13:14 -05:00
# include "virhash.h"
# include "virjson.h"
# include "virbuffer.h"
2018-03-22 17:07:43 +01:00
int
2021-03-11 08:16:13 +01:00
testQEMUSchemaValidate ( virJSONValue * obj ,
virJSONValue * root ,
2020-10-22 19:04:18 +02:00
GHashTable * schema ,
2020-04-29 17:52:43 +02:00
bool allowDeprecated ,
2021-03-11 08:16:13 +01:00
virBuffer * debug ) ;
2018-03-22 17:07:43 +01:00
2020-03-04 10:22:19 +01:00
int
testQEMUSchemaValidateCommand ( const char * command ,
2021-03-11 08:16:13 +01:00
virJSONValue * arguments ,
2020-10-22 19:04:18 +02:00
GHashTable * schema ,
2020-04-29 17:52:43 +02:00
bool allowDeprecated ,
bool allowRemoved ,
2021-10-15 12:06:14 +02:00
bool allowIncomplete ,
2021-03-11 08:16:13 +01:00
virBuffer * debug ) ;
2020-03-04 10:22:19 +01:00
2020-08-06 19:43:51 +02:00
int
2021-03-11 08:16:13 +01:00
testQEMUSchemaEntryMatchTemplate ( virJSONValue * schemaentry ,
2024-06-05 15:50:16 +02:00
. . . )
G_GNUC_NULL_TERMINATED ;
2020-08-06 19:43:51 +02:00
2021-03-11 08:16:13 +01:00
virJSONValue *
2020-02-20 17:01:46 -05:00
testQEMUSchemaGetLatest ( const char * arch ) ;
2018-07-09 15:44:52 +02:00
2020-10-22 19:04:18 +02:00
GHashTable *
2020-05-15 16:21:25 +02:00
testQEMUSchemaLoadLatest ( const char * arch ) ;
2020-05-15 16:32:40 +02:00
2020-10-22 19:04:18 +02:00
GHashTable *
2020-05-15 16:32:40 +02:00
testQEMUSchemaLoad ( const char * filename ) ;