Closed ghisvail closed 6 years ago
ReproZip actually has functional tests (tests/functional.py) that build and run a number of simple C programs that exhibit various behaviors to test the tracer. You can also run simple UNIX tools such as echo
, id
, ...
The testrun
command doesn't leave files behind and prints out the collected information to standard output, so it might be what you want.
For reprounzip, there are a number of packages that get tested in the functional tests, you can for instance grab this one: https://drive.google.com/uc?export=download&id=0B3ucPz7GSthBRGp2Vm5VQVpWOGs
and either run simple commands (info
/showfiles
) or actually extract it.
Let us know if you need help with anything else. We are excited for the opportunity to make it into the Debian repository!
I was considering building DEB packages myself last year (branch debian) to go with our Windows/macOS installers, but never got to it.
We are excited for the opportunity to make it into the Debian repository!
Glad to hear about that :-)
ReproZip actually has functional tests [...]
Since I'll be sourcing reprozip, reprounzip et al from the release tarballs on PyPI, I won't have access to those, right?
The
testrun
command doesn't leave files behind and prints out the collected information to standard output, so it might be what you want.
Absolutely.
For reprounzip, there are a number of packages that get tested [...]
I would preferably want to avoid relying on pre-generated archives, because either they have to be embedded to the packaging (thereby significantly increasing the size of the resulting source package) or fetched remotely, which raises concerns of the persistence of the data long term.
Instead, I was thinking that the packaging for reprounzip
could be validated via some sort of round-trip test on a locally generated archive via the packaged reprozip
, hence the request for an helloworld style example. I could also a use a variation of the test suite residing in tests
, but would probably need help to extract the relevant subset of code and making it runnable standalone. Bonus points for using an established test framework, preferably pytest
.
Since I'll be sourcing reprozip, reprounzip et al from the release tarballs on PyPI, I won't have access to [the functional tests]
Well, the problem is that the tests use all the components, and therefore it doesn't make a lot of sense to bundle them with any single one.
If the reprounzip tests can depend on reprozip, making up a simple round-trip is easy, but running the full test suite should be possible.
My unit tests use the unittest
library (should be compatible with pytest
), but the functional tests don't (they have options for what to run, and are not split into simple self-contained tests, mostly for speed).
All good for the reprozip
packaging. Now moving on to reprounzip
.
Your pointers have been very helpful.
FYI, both reprozip and reprounzip are now available in Debian
Awesome! I can't see reprounzip just yet.
Are the plugins (reprounzip-docker and reprounzip-vagrant) packaged with reprounzip?
Awesome! I can't see reprounzip just yet.
It was accepted only a few hours ago.
Are the plugins (reprounzip-docker and reprounzip-vagrant) packaged with reprounzip?
They are next in line. I'll ask you for corresponding roundtrip tests for each.
Thanks, Ghis
On a related note, should we provide manpages?
Yes please. I'd suggest a simple Sphinx
based setup with just the man
command for each package registered on PyPI.
In my effort to package the reprozip tools for Debian / Ubuntu, I was wondering whether you could provide a simple test example (helloworld style) which could help validate the reprozip / reprounzip packages?
Thanks,