blob: 05584a5f84d03847aaf3e30c8b8126135e19b0e9 [file] [log] [blame]
# Copyright 2006-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from portage import os
from portage.tests import TestCase
from portage.env.config import PortageModulesFile
from tempfile import mkstemp
class PortageModulesFileTestCase(TestCase):
keys = ['foo.bar', 'baz', 'bob', 'extra_key']
invalid_keys = ['', ""]
modules = ['spanky', 'zmedico', 'antarus', 'ricer', '5', '6']
def setUp(self):
self.items = {}
for k, v in zip(self.keys + self.invalid_keys, self.modules):
self.items[k] = v
def testPortageModulesFile(self):
self.BuildFile()
f = PortageModulesFile(self.fname)
f.load()
for k in self.keys:
self.assertEqual(f[k], self.items[k])
for ik in self.invalid_keys:
self.assertEqual(False, ik in f)
self.NukeFile()
def BuildFile(self):
fd, self.fname = mkstemp()
f = os.fdopen(fd, 'w')
for k, v in self.items.items():
f.write('%s=%s\n' % (k, v))
f.close()
def NukeFile(self):
os.unlink(self.fname)