Testing native binaries using CFFI
This a quick intro to the idea of FFI in Python and one practical use case based on my own experiences with a personal project.
I’ve been working a native cross platform library to gather system information. The long term intention is to make bindings for it in various languages. The whole thing is written in C and it’s somewhat hard to write unit tests for these kinds of libraries.
This talk is about using a combination of cffi and py.test to write unit tests for the library in Python.
The talk will cover some basics of writing python bindings using CFFI and then writing unit tests using these. As a bonus, a small py.test plugin which can be used to measure the unit tests coverage of the C library will be presented.
The presentation is and outline are at https://github.com/nibrahim/presentation-cffi/blob/master/outline.org
I might tweak it a little for stlyistic purposes but this is what I’ll be presenting
I’m the founder of PyCon India and have been involved with the Indian Python community for quite a while now. I mostly work in infrastructure and automation projects. I’m the founder of the technology services company Hamon
- Me : http://nibrahim.net.in
- The presentation : https://github.com/nibrahim/presentation-cffi
- The library used in the presentation : https://github.com/nibrahim/cpslib