On Wed, Apr 07, 2010 at 05:34:50PM -0400, Stefan Berger wrote:
This patch adds new test cases to the existing nwfilter test program
and
adds a test script that must be run while a VM is running. This test
script verifies that input network filter XML creates expected
user-defined tables and rules on ebtables, iptables & ip6tables layer
and verifies their content against expected content. The idea is that
these tools always return exactly the same output when displaying the
content of a user-defined table so that the diff tool can be used for
simple text comparison. All supported protocols have at least one test
case.
This test program is not run automatically since it requires a running
VM.
I'm wondering a bit about this.
So far all our embedded tests from "make tests" are supposed to be
agnostic on the machine state, and I wonder if it ain't preferable to
kepp them that way. For example we have no real save/restore or
migration tests here because like the nwfilter rukes testing that would
require actual VM runnings.
To me it seems this test should rather be targetted to the TCK, the
separate test suite for libvirt:
http://libvirt.org/git/?p=libvirt-tck.git
that's really the place where tests relying on actual system behaviour
should be implemented, and IMHO the more people start to look at it the
better.
Dan sent an introduction when he created the project
http://www.mail-archive.com/libvir-list@redhat.com/msg12703.html
and an update recently:
http://www.mail-archive.com/libvir-list@redhat.com/msg21503.html
so some of the hairy shell scripting for this test could be replaced
with (less hairy ?) Perl testing, but in a framework really intended
to have actual running domains.
I understand that the current version of the test is not supposed to
run if there is no domain target, but really it break the rule that
libvirt "make tests" should not be dependant on the machine state,
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/