[libvirt] [PATCH python] Skip sparseRecvAll / sparseSendAll in sanity test

Daniel P. Berrange berrange at redhat.com
Mon Sep 18 09:49:40 UTC 2017


On Mon, Sep 18, 2017 at 11:47:24AM +0200, Michal Privoznik wrote:
> On 09/14/2017 02:50 PM, Daniel P. Berrange wrote:
> > The sanity test check aims to ensure that every function listed in
> > the Python code maps to a corresponding C function. The Sparse
> > send/recv methods are special though - we're never calling the
> > corresponding C APIs, instead we have a pure python impl.
> > 
> > Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> > ---
> >  sanitytest.py | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/sanitytest.py b/sanitytest.py
> > index deec200..a5cb01b 100644
> > --- a/sanitytest.py
> > +++ b/sanitytest.py
> > @@ -351,7 +351,8 @@ for klass in gotfunctions:
> >      for func in sorted(gotfunctions[klass]):
> >          # These are pure python methods with no C APi
> >          if func in ["connect", "getConnect", "domain", "getDomain",
> > -                    "virEventInvokeFreeCallback"]:
> > +                    "virEventInvokeFreeCallback",
> > +                    "sparseRecvAll", "sparseSendAll"]:
> >              continue
> >  
> >          key = "%s.%s" % (klass, func)
> > 
> 
> Well, what if somebody builds -python against older libvirt that lacks
> virStreamSparseRecvAll()? Are they facing an exception because cmod is
> unable to find that func?

Yes, the same is true of any of the functions where we manually written
the Python API. To be fully correct we ought to annotate the manually
written python code and then process the .py file to strip out the APIs
we can't support. Patches welcome for doing that....

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list