Add some machinery to test the Include directive

After the previous patch that re-enabled its use outside of sync repository
sections which we had unintentionally disabled.

Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Dan McGee 2010-05-17 18:47:30 -05:00
parent 3a85f83840
commit a6ace987a9
4 changed files with 38 additions and 5 deletions

View File

@ -85,6 +85,7 @@ def __init__(self, treename, dbdir):
self.treename = treename
self.dbdir = dbdir
self.pkgs = []
self.option = {}
def __str__(self):
return "%s" % self.treename

View File

@ -0,0 +1,17 @@
self.description = "Quick check for Include being parsed in [options]"
self.option['Include'] = ['/dev/null']
p = pmpkg("foobar")
p.files = ["bin/foobar"]
p.desc = "test description"
p.groups = ["foo"]
p.url = "http://www.archlinux.org"
p.license = "GPL2"
p.arch = "i686"
self.addpkg2db("local", p)
self.args = "-Qi %s" % p.name
self.addrule("PACMAN_RETCODE=0")

View File

@ -0,0 +1,12 @@
self.description = "Quick check for Include being parsed in [db]"
sp = pmpkg("dummy")
sp.files = ["bin/dummy",
"usr/man/man1/dummy.1"]
self.addpkg2db("sync", sp)
self.db['sync'].option['Include'] = ['/dev/null']
self.args = "-Si %s" % sp.name
self.addrule("PACMAN_RETCODE=0")

View File

@ -178,11 +178,14 @@ def mkcfgfile(filename, root, option, db):
data.extend(["%s = %s" % (key, j) for j in value])
# Repositories
data.extend(["[%s]\n" \
"Server = file://%s\n" \
% (value.treename, \
os.path.join(root, SYNCREPO, value.treename)) \
for key, value in db.iteritems() if key != "local"])
for key, value in db.iteritems():
if key != "local":
data.append("[%s]\n" \
"Server = file://%s" \
% (value.treename,
os.path.join(root, SYNCREPO, value.treename)))
for optkey, optval in value.option.iteritems():
data.extend(["%s = %s" % (optkey, j) for j in optval])
mkfile(os.path.join(root, filename), "\n".join(data))