26 Commits

Author SHA1 Message Date
Niels Thykier
0b4f58315f
Rename a method and reduce a table to a set
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:18 +00:00
Niels Thykier
0eb8b5a201
BinaryPackageUniverse: Provde equivalent_packages
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:17 +00:00
Niels Thykier
ef813bf0d8
Let the BinaryPackageUnvierse track broken packages
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:16 +00:00
Niels Thykier
8867ef0cf9
Let the BinaryPackageUniverse track essential packages
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:15 +00:00
Niels Thykier
07a407e810
Partly separate the solver from the inst_tester
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:14 +00:00
Niels Thykier
35b06ee007
tests: Separate inst_tester from universe
This commit updates the test suite to use the BinaryPackageUniverse
instead of the InstallabilityTester where that makes sense.  The rest
of Britney has yet to be updated except where absolutely necessary (as
that will come in a later commit).

Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:11 +00:00
Niels Thykier
d557610c6f
BinaryPackageUniverse: Implement packages_equivalent_to()
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:10 +00:00
Niels Thykier
530db5d3f7
Extract a BinaryPackageUniverse from the InstallabilityTester
The InstallabilityTester is suffering from a lack of clear purpose
because it serves multiple.  This commit extracts most of one of these
purposes into the BinaryPackageUniverse class while retaining the
original API of the InstallabilityTester.

Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-11 09:38:09 +00:00
Niels Thykier
32def47991
Fix typo in doc string
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-11-01 21:30:25 +00:00
Niels Thykier
6c5300d873
Unfold the suite.binaries tuple into two members
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-10-25 18:34:41 +00:00
Niels Thykier
1e46965924
inst/builder.py: Split function in three to reduce indentation levels
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-09-30 12:19:37 +00:00
Niels Thykier
cd1f384012
inst-tester: Remove obsolete "safe-set" optimization
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-09-30 12:19:34 +00:00
Niels Thykier
b6888c2716 test-builder: Avoid allocating empty throw-away lists on empty relations
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 14:38:36 +00:00
Niels Thykier
373f7f51f3 inst-builder: Avoid some hash-look ups by doing them early
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 14:02:29 +00:00
Niels Thykier
35add7cb26 Move loop-invariant out of loop
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 13:50:22 +00:00
Niels Thykier
02001d4d4f inst-builder: Loop over values instead of keys + hash-lookup
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 13:18:43 +00:00
Niels Thykier
0446ead9e8 inst-builder: Replace RelationBuilder with a set_relations method
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 13:06:48 +00:00
Niels Thykier
ab6b2ef953 inst-builder: Refactor to bulk adding dependency clauses
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 12:47:11 +00:00
Niels Thykier
bc1d3afa38 inst-builder: Make add_breaks a bulk call
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 12:33:09 +00:00
Niels Thykier
6f97e36477 inst-builder: Split relation loop and optimize conflicts
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 12:25:20 +00:00
Niels Thykier
6a3d100b92 Fix error format string error in AssertionError
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 12:23:35 +00:00
Niels Thykier
fc834624fc Avoid some unnecessary hash look ups
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-08-12 08:37:07 +00:00
Niels Thykier
64d2bc4203 builder.py: Make the code suite agnostic
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-07-29 09:23:12 +00:00
Niels Thykier
0cc7f7a8d2 Move build_installability_tester to builder.py
Signed-off-by: Niels Thykier <niels@thykier.net>
2016-11-22 21:03:40 +00:00
Niels Thykier
20c2b87833 Sprinkle some "no cover" pragmas over the code base
Add some "no cover" to some unrecoverable exceptions
(e.g. misconfiguration) or base-class methods that are not intended to
be invoked.

Signed-off-by: Niels Thykier <niels@thykier.net>
2016-11-13 11:39:46 +00:00
Niels Thykier
9bc94db01c Refactor all modules into a britney2 subdir
That way they are all contained.

Signed-off-by: Niels Thykier <niels@thykier.net>
2016-11-13 08:02:00 +00:00