[libvirt] [test-API PATCH] Added screenshot test
Guannan Ren
gren at redhat.com
Wed Apr 4 13:54:41 UTC 2012
On 04/04/2012 09:43 PM, Martin Kletzander wrote:
> On 04/04/2012 03:10 PM, Guannan Ren wrote:
>> On 04/04/2012 07:53 PM, Martin Kletzander wrote:
>>> On 04/04/2012 01:23 PM, Guannan Ren wrote:
>>>> On 04/04/2012 06:30 PM, Martin Kletzander wrote:
>>>>> On 04/04/2012 07:13 AM, Guannan Ren wrote:
>>>>>> ---
>>>>>> repos/domain/screenshot.py | 5 +++++
>>>>>> 1 files changed, 5 insertions(+), 0 deletions(-)
>>>>>>
>>>>>> diff --git a/repos/domain/screenshot.py b/repos/domain/screenshot.py
>>>>>> index 9986cab..eeda2b5 100644
>>>>>> --- a/repos/domain/screenshot.py
>>>>>> +++ b/repos/domain/screenshot.py
>>>>>> @@ -55,3 +55,8 @@ def screenshot(params):
>>>>>> conn.close()
>>>>>>
>>>>>> return ret
>>>>>> +
>>>>>> +def screenshot_clean(params):
>>>>>> + """clean testing environment"""
>>>>>> + filename = params['filename']
>>>>>> + os.system('rm -f %s.*' % filename)
>>>>> The extension can be different every time, so we have to check that.
>>>>> I'd
>>>>> prefer something like this:
>>>>>
>>>>> diff --git a/repos/domain/screenshot.py b/repos/domain/screenshot.py
>>>>> index 9986cab..c620085 100644
>>>>> --- a/repos/domain/screenshot.py
>>>>> +++ b/repos/domain/screenshot.py
>>>>> @@ -39,8 +39,8 @@ def screenshot(params):
>>>>> st = conn.newStream(0)
>>>>> mime = dom.screenshot(st, params['screen'], 0)
>>>>>
>>>>> - ext = mimetypes.guess_extension(mime) or '.ppm'
>>>>> - filename = params['filename'] + ext
>>>>> + params['ext'] = mimetypes.guess_extension(mime) or '.ppm'
>>>> This modification on params couldn't be passed in
>>>> screenshot_clean()
>>>> The params to screenshot_clean() is the same as the
>>>> screenshot() which
>>>> is from testcase config file.
>>>>
>>>>
>>> Darn :( That's exactly why I wanted the parameter passing between tests
>>> :) What do you suggest? Should I save the extension into another file or
>>> do we have any other option?
>> The idea to share variable is reasonable, we can create a
>> shared_mod.py in
>> root of test-API, then import it in all of testcases, The first
>> testcase put the value in
>> this module for sharing with other modules. the connection object,
>> domain
>> network .etc could be shared in this way.
>> Except these fixed share object. we could define 3 or 5 customized
>> shared variable
>> for use. The contents of shared_mod.py should be like this:
>>
>> #shared_mod.py
>> con = None
>> domobj = None
>> netojb = None
>> stgobj = None
>> ...
>> defined_var1 = None
>> defined_var2 = None
>> defined_var3 = None
>>
>> Guannan Ren
>>
> I had an idea with expanding the parameters, tests could then share
> whatever they want, but this would break current tests when not handled
> correctly. I think your idea can be used now, just to fix these kind of
> things and we can treat the expansion into more sophisticated code as a
> major change and implement it after some release.
>
> Martin
Okay, I will send patches for this as soon as possible.
Guannan Ren
More information about the libvir-list
mailing list