On Tue, Nov 13, 2018 at 09:20:11AM -0500, Cleber Rosa wrote: > > > On 11/13/18 8:51 AM, Kevin Wolf wrote: > > Am 13.11.2018 um 14:26 hat Eduardo Habkost geschrieben: > >> On Tue, Nov 13, 2018 at 01:18:36PM +0100, Kevin Wolf wrote: > >> [...] > >>> Anyway, one specific concern about the "simple way" I have is that we're > >>> adding a hard dependency on an external package (Avocado) that isn't > >>> usually installed anyway on developer machines. Maintainers will of > >>> course just install it. But will this reduce the amount of tests that > >>> contributors run, and increase the amount of untested patches on the > >>> mailing list? > >>> > >>> Maybe we can keep a simple in-tree runner like ./check that doesn't have > >>> any external dependencies and runs all of those tests that don't make > >>> use of Avocado utility functions etc.? And you'd use Avocado when you > >>> want to run all tests or use advanced test harness options. > >> > >> What problems you are trying to address here, exactly? > >> > >> If you don't have Avocado installed in your system, all you need > >> is Python 3, an internet connection, and the ability to type > >> "make check-acceptance" on your keyboard. > > > > Thanks, didn't know that one. Apparently you don't only need to have > > Python 3 available on the system, but also explicitly use it for > > ./configure? > > > > $ LANG=C make check-acceptance > > /home/kwolf/source/qemu/tests/Makefile.include:930: *** "venv directory > > for tests requires Python 3". Stop. > > > > While this doesn't make the tests available automatically for everyone, > > we'll get there when we finally make Python 3 the default (hopefully > > soon), which is already a lot better than what docs/devel/testing.rst > > promises: > > > > These tests are written using the Avocado Testing Framework (which > > must be installed separately) [...] > > > > Maybe time to update the docs to match the improved situation? :-) > > > > Kevin > > > > The docs were updated when "make check-acceptance" was used. That > sentence is still true, Avocado must be installed separately, it's just > that "check-venv", used by "check-acceptance" does just that.
With check-venv, we made "installing avocado" a small implementation detail that people don't need to care about when running the tests. I believe the sentence "which must be installed separately" is now confusing and misleading. It can be easily interpreted as "must be installed manually by the user", which is not case. > [...] -- Eduardo