summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node/FSTests.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2004-01-17 14:56:46 (GMT)
committerSteven Knight <knight@baldmt.com>2004-01-17 14:56:46 (GMT)
commit18d748a479233b689144db11a2ac3643a6577273 (patch)
tree0d41d084dbebe2ae095a823949a9dfcbdaa0706a /src/engine/SCons/Node/FSTests.py
parent0efe8eaf133ccf1386df12436d4cca218121280c (diff)
downloadSCons-18d748a479233b689144db11a2ac3643a6577273.zip
SCons-18d748a479233b689144db11a2ac3643a6577273.tar.gz
SCons-18d748a479233b689144db11a2ac3643a6577273.tar.bz2
Fix retrieving multiple target files from cache. (Bob Halley)
Diffstat (limited to 'src/engine/SCons/Node/FSTests.py')
-rw-r--r--src/engine/SCons/Node/FSTests.py43
1 files changed, 28 insertions, 15 deletions
diff --git a/src/engine/SCons/Node/FSTests.py b/src/engine/SCons/Node/FSTests.py
index 739d4e9..132e8f6 100644
--- a/src/engine/SCons/Node/FSTests.py
+++ b/src/engine/SCons/Node/FSTests.py
@@ -1528,7 +1528,8 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f1.build()
+ r = f1.retrieve_from_cache()
+ assert r == 1, r
assert self.retrieved == [f1], self.retrieved
assert built_it is None, built_it
@@ -1536,9 +1537,10 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f1.build()
+ r = f1.retrieve_from_cache()
+ assert r is None, r
assert self.retrieved == [f1], self.retrieved
- assert built_it, built_it
+ assert built_it is None, built_it
finally:
SCons.Node.FS.CacheRetrieve = save_CacheRetrieve
@@ -1554,7 +1556,8 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f2.build()
+ r = f2.retrieve_from_cache()
+ assert r == 1, r
assert self.retrieved == [f2], self.retrieved
assert built_it is None, built_it
@@ -1562,9 +1565,10 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f2.build()
+ r = f2.retrieve_from_cache()
+ assert r is None, r
assert self.retrieved == [f2], self.retrieved
- assert built_it, built_it
+ assert built_it is None, built_it
finally:
SCons.Node.FS.CacheRetrieveSilent = save_CacheRetrieveSilent
@@ -1602,12 +1606,19 @@ class CacheDirTestCase(unittest.TestCase):
# Verify how the cachepath() method determines the name
# of the file in cache.
- f5 = fs.File("cd.f5")
- f5.set_bsig('a_fake_bsig')
- cp = f5.cachepath()
- dirname = os.path.join('cache', 'A')
- filename = os.path.join(dirname, 'a_fake_bsig')
- assert cp == (dirname, filename), cp
+ def my_collect(list):
+ return list[0]
+ save_collect = SCons.Sig.MD5.collect
+ SCons.Sig.MD5.collect = my_collect
+ try:
+ f5 = fs.File("cd.f5")
+ f5.set_bsig('a_fake_bsig')
+ cp = f5.cachepath()
+ dirname = os.path.join('cache', 'A')
+ filename = os.path.join(dirname, 'a_fake_bsig')
+ assert cp == (dirname, filename), cp
+ finally:
+ SCons.Sig.MD5.collect = save_collect
# Verify that no bsig raises an InternalERror
f6 = fs.File("cd.f6")
@@ -1661,7 +1672,8 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f8.build()
+ r = f8.retrieve_from_cache()
+ assert r == 1, r
assert self.retrieved == [f8], self.retrieved
assert built_it is None, built_it
@@ -1669,9 +1681,10 @@ class CacheDirTestCase(unittest.TestCase):
self.retrieved = []
built_it = None
- f8.build()
+ r = f8.retrieve_from_cache()
+ assert r is None, r
assert self.retrieved == [f8], self.retrieved
- assert built_it, built_it
+ assert built_it is None, built_it
finally:
SCons.Node.FS.CacheRetrieveSilent = save_CacheRetrieveSilent