test : fixed failing unit tests

This commit is contained in:
alalazo 2016-03-02 12:52:38 +01:00
parent 6f42dd556d
commit 726b350689
8 changed files with 116 additions and 113 deletions

View File

@ -168,6 +168,7 @@ def create(path, specs, **kwargs):
pkg = spec.package
tty.msg("Adding package {pkg} to mirror".format(pkg=spec.format("$_$@")))
try:
with pkg.stage:
for ii, stage in enumerate(pkg.stage):
fetcher = stage.fetcher
if ii == 0:

View File

@ -404,10 +404,13 @@ def path(self):
return self[0].path
def __enter__(self):
return self[0].__enter__()
for item in self:
item.__enter__()
return self
def __exit__(self, exc_type, exc_val, exc_tb):
return self[0].__exit__(exc_type, exc_val, exc_tb)
for item in reversed(self):
item.__exit__(exc_type, exc_val, exc_tb)
def chdir_to_source(self):
return self[0].chdir_to_source()

View File

@ -52,8 +52,6 @@ def setUp(self):
def tearDown(self):
shutil.rmtree(self.tmpdir, ignore_errors=True)
if self.stage:
self.stage.destroy()
os.chdir(self.orig_dir)
@ -64,11 +62,11 @@ def check_archive(self, filename, system):
url = 'file://' + join_path(os.getcwd(), 'archive.tar.gz')
print url
self.stage = Stage(url)
self.stage.fetch()
with Stage(url) as stage:
stage.fetch()
guesser = ConfigureGuesser()
guesser(self.stage)
guesser(stage)
self.assertEqual(system, guesser.build_system)

View File

@ -76,6 +76,7 @@ def try_fetch(self, rev, test_file, args):
"""
self.pkg.versions[ver('git')] = args
with self.pkg.stage:
self.pkg.do_stage()
self.assert_rev(rev)

View File

@ -68,6 +68,7 @@ def try_fetch(self, rev, test_file, args):
"""
self.pkg.versions[ver('hg')] = args
with self.pkg.stage:
self.pkg.do_stage()
self.assertEqual(self.repo.get_rev(), rev)

View File

@ -38,6 +38,8 @@ class LinkTreeTest(unittest.TestCase):
def setUp(self):
self.stage = Stage('link-tree-test')
# FIXME : possibly this test needs to be refactored to avoid the explicit call to __enter__ and __exit__
self.stage.__enter__()
with working_dir(self.stage.path):
touchp('source/1')
@ -51,10 +53,8 @@ def setUp(self):
source_path = os.path.join(self.stage.path, 'source')
self.link_tree = LinkTree(source_path)
def tearDown(self):
if self.stage:
self.stage.destroy()
self.stage.__exit__(None, None, None)
def check_file_link(self, filename):

View File

@ -74,14 +74,14 @@ def set_up_package(self, name, MockRepoClass, url_attr):
def check_mirror(self):
stage = Stage('spack-mirror-test')
with Stage('spack-mirror-test') as stage:
mirror_root = join_path(stage.path, 'test-mirror')
# register mirror with spack config
mirrors = { 'spack-mirror-test' : 'file://' + mirror_root }
spack.config.update_config('mirrors', mirrors)
try:
os.chdir(stage.path)
spack.mirror.create(
mirror_root, self.repos, no_checksum=True)
@ -102,8 +102,8 @@ def check_mirror(self):
spec = Spec(name).concretized()
pkg = spec.package
pkg._stage = None
saved_checksum_setting = spack.do_checksum
with pkg.stage:
try:
# Stage the archive from the mirror and cd to it.
spack.do_checksum = False
@ -127,8 +127,6 @@ def check_mirror(self):
finally:
spack.do_checksum = saved_checksum_setting
pkg.do_clean()
finally:
stage.destroy()
def test_git_mirror(self):

View File

@ -82,6 +82,7 @@ def try_fetch(self, rev, test_file, args):
"""
self.pkg.versions[ver('svn')] = args
with self.pkg.stage:
self.pkg.do_stage()
self.assert_rev(rev)