Gentoo Archives: gentoo-dev

From: Maurice van der Pot <griffon26@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] tests
Date: Tue, 01 May 2007 17:21:30
Message-Id: 20070501171828.GL10636@kfk4ever.com
In Reply to: [gentoo-dev] tests by "Piotr Jaroszyński"
1 On Tue, May 01, 2007 at 03:08:56PM +0200, Piotr Jaroszyński wrote:
2 > Firstly each test can be(not all categories are mutually exclusive):
3 > - not existant
4 > - non-functional
5 > - not runnable from ebuild
6 > - useful but unreasonable resource-wise
7 > - useful and reasonable resource-wise
8 > - necessary
9 > - known to partially fail but with a way of skipping failing tests
10 > - known to partially fail but with no easy way of skipping failing tests
11 > Is that list comprehensive?
12
13 Isn't it easier to list a set of boolean properties of _individual_
14 tests?
15 - We don't need "non existent".
16 - Non-functional and known to partially fail come down to "known to
17 fail" for individual tests.
18 - I have no idea what "not runnable from ebuild" is.
19 - Unreasonable could be "resource hungry" or "needs additional deps"
20 (those are two different things).
21 - If a test is "necessary" I don't see why we should allow it to be
22 skipped.
23 - And about skipping failing tests. There is always a way to skip
24 failing tests: not running any of them. It's just the granularity that
25 is different, but the user doesn't care about that.
26
27 > Secondly we must answer the question how precisely we want to distinguish
28 > them, so users/dev can choose which categories of tests they want to run.
29 > What comes to mind is:
30 > - run all tests
31 > - run only necessary tests
32 > - run only reasonable tests
33 > - don't run tests at all
34 > Again, is that list comprehensive?
35
36 I'd say, let the user decide based on the properties, fex:
37
38 run known to fail : no
39 run resource hungry: yes
40 run additional deps: no
41
42 if ( (known to fail == false || run known to fail == true) &&
43 (resource hungry == false || run resource hungry == true) &&
44 (additional deps == false || run additional deps == true) )
45 {
46 run the test
47 }
48
49 So for each test/set of tests and for each possible reason not to run
50 it, either the reason does not apply to this test or the user explicitly
51 said to run it anyway.
52
53 You don't see the "way of skipping failing tests" in this last part.
54 This is because if the decision is made not to run a test, the smallest
55 set that can be skipped (possibly all tests for an ebuild) are skipped.
56
57 > Please don't post solutions unless we figure out which options we really want
58 > to deliver.
59
60 I'm sorry if this counts as a solution, but I wasn't sure the list you
61 gave was the kind of list we need and I didn't know another way of
62 explaining the use of the properties I listed.
63
64 Regards,
65 Maurice.
66
67 --
68 Maurice van der Pot
69
70 Gentoo Linux Developer griffon26@g.o http://www.gentoo.org
71 Creator of BiteMe! griffon26@××××××××.com http://www.kfk4ever.com

Replies

Subject Author
Re: [gentoo-dev] tests Ciaran McCreesh <ciaranm@×××××××.org>
Re: [gentoo-dev] tests "Piotr Jaroszyński" <peper@g.o>