[libvirt] [Xen-devel] [PATCH 5/5] Add a test suite for libxl option generator

Jim Fehlig jfehlig at suse.com
Mon Jun 2 21:42:36 UTC 2014


Daniel P. Berrange wrote:
> On Mon, Jun 02, 2014 at 01:53:46PM +0100, Ian Campbell wrote:
>   
>> On Fri, 2014-05-30 at 18:24 +0100, Daniel P. Berrange wrote:
>>     
>>> +    if (STRNEQ(expectargv, (char *)actualargv)) {
>>> +        virtTestDifference(stderr, expectargv, (char *)actualargv);
>>> +        goto cleanup;
>>> +    }
>>>       
>> Since you are using libxl_domain_config_gen_json you can control the
>> pretty printing, but if you were to use the libxl_domain_config_to_json
>> you might have problems if the library was to do something slightly
>> different e.g. with whitespace.
>>
>> In 4.5 we will have libxl_*_from_json and (I think) libxl_*_compare, so
>> you could read in the template and compare it with the generated struct.
>> That doesn't help you now of course.
>>
>> Also in 4.5 the json will omit fields which are set to the their
>> explicit default value. libxl_*_from_json will still do the right thing,
>> but it'd be another annoyance for you here I think.
>>
>> Lastly, when we add new fields to the API they will start showing up in
>> the json (modulo the omission of defaults discussed above).
>>     
>
> Hmm, that's a v good point.
>   

One that can already be seen.  The test works when run on Xen 4.3, but
fails on 4.4.  E.g. c_info gained some new fields

        "poolid": 0,
        "run_hotplug_scripts": "<default>",
+        "pvh": "<default>",
+        "driver_domain": "<default>"
    },

And on_watchdog's value changed

    "on_poweroff": null,
    "on_reboot": "destroy",
-    "on_watchdog": null,
+    "on_watchdog": "destroy",
    "on_crash": "destroy"

Regards,
Jim




More information about the libvir-list mailing list