diff options
| author | Steven Knight <knight@baldmt.com> | 2004-01-17 14:56:46 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2004-01-17 14:56:46 (GMT) |
| commit | 18d748a479233b689144db11a2ac3643a6577273 (patch) | |
| tree | 0d41d084dbebe2ae095a823949a9dfcbdaa0706a /src/engine/SCons/Node/FSTests.py | |
| parent | 0efe8eaf133ccf1386df12436d4cca218121280c (diff) | |
| download | SCons-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.py | 43 |
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 |
