1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
PMS Test Suite
==============
A GSoC 2011 project by Michał Górny.
[Homepage]( http://www.gentoo.org/proj/en/qa/pms/pms-test-suite.xml )
Few words of introduction
-------------------------
The PMS Test Suite projects aims to create a comprehensive, universal test suite
for Gentoo Package Managers. It is supposed to create a set of test ebuilds, run
them using a particular Package Manager (like portage) and check their results
to determine whether the PM does comply to the [PMS][1].
[1]:http://www.gentoo.org/proj/en/qa/pms.xml
Running tests using Portage
---------------------------
The Portage backend is the only backend supporting running tests using a random,
unconfigured directory. Thus, running the test suite is as simple as:
pms-tester -R /tmp/temporary-repo-location
This will cover all the necessary steps of setting up the repository, creating
ebuilds, setting `PORTDIR_OVERLAY` and running the test suite. Please note that
it doesn't remove the repository afterwards -- it is intended to be reusable.
Running tests using other PMs
-----------------------------
If the intent is to use another PM than Portage, one must first create
an (empty) repository for test suite and add it to PMs repository list.
The simplest way of doing that involves using the Portage backend once again:
pms-tester -R /var/cache/pms-tests --create-repo-only
One may also create and name the repository manually:
umask 022
mkdir -p /var/cache/pms-tests/profiles
echo 'pms-test-suite' > /var/cache/pms-tests/profiles/repo_name
In both cases, it is necessary to add the repository to PMs config; for Portage
that would be:
echo 'PORTDIR_OVERLAY="${PORTDIR_OVERLAY}
/var/cache/pms-tests' >> /etc/make.conf
The newly-created repository will be then referenced by its name:
pms-tester -p pkgcore
If a different name was used, that would be:
pms-tester -r repository-name -p pkgcore
Getting nice HTML results
-------------------------
By default, pms-tester simply runs all tests and prints status information
and details on test failures. If you'd like to get a nice HTML output instead
(like [the one published by me][1]), please use:
pms-tester -o html -O myoutput.html
This will, however, create output for a single PM only. In order to use multiple
ones, just specify all of them:
pms-tester -p paludis -p pkgcore -p portage -o html -O myoutput.html
[1]:http://www.gentoo.org/proj/en/qa/pms/pms-test-suite-output.html
<!-- vim:se syn=markdown :-->
|