diff options
| author | Steven Knight <knight@baldmt.com> | 2003-10-18 19:22:25 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2003-10-18 19:22:25 (GMT) |
| commit | e48bef4f0520f04d71dfa2654621f3aa8a4fabe9 (patch) | |
| tree | eb654ea23be6a82f3a29d8b451e652d9cd2e883b /src/engine/SCons/Node | |
| parent | 528ebad33f8ecbe8401ef779ce64648a7de0851a (diff) | |
| download | SCons-e48bef4f0520f04d71dfa2654621f3aa8a4fabe9.zip SCons-e48bef4f0520f04d71dfa2654621f3aa8a4fabe9.tar.gz SCons-e48bef4f0520f04d71dfa2654621f3aa8a4fabe9.tar.bz2 | |
Allow SConsignFile() to take a dbm module argument; portability fixes. (Ralf W. Grosse-Kunstleve) Make ParseConfig() and env.Append() work regardless of initial construction variable values. Make new Dir() support work with empty directories and timestamps. Make the new Queue-based Job implementation portable to Python 1.5.2.
Diffstat (limited to 'src/engine/SCons/Node')
| -rw-r--r-- | src/engine/SCons/Node/FS.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Node/FSTests.py | 21 |
2 files changed, 23 insertions, 2 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py index d93a6a4..b183a88 100644 --- a/src/engine/SCons/Node/FS.py +++ b/src/engine/SCons/Node/FS.py @@ -912,7 +912,7 @@ class DummyExecutor: def get_contents(self): return '' def get_timestamp(self): - return None + return 0 class Dir(Base): """A class for directories in a file system. @@ -1148,7 +1148,7 @@ class Dir(Base): def get_timestamp(self): """Return the latest timestamp from among our children""" - stamp = None + stamp = 0 for kid in self.children(None): if kid.get_timestamp() > stamp: stamp = kid.get_timestamp() diff --git a/src/engine/SCons/Node/FSTests.py b/src/engine/SCons/Node/FSTests.py index 53e2013..2237959 100644 --- a/src/engine/SCons/Node/FSTests.py +++ b/src/engine/SCons/Node/FSTests.py @@ -985,6 +985,27 @@ class FSTestCase(unittest.TestCase): finally: test.unlink("tstamp") + test.subdir('tdir1') + d = fs.Dir('tdir1') + t = d.get_timestamp() + assert t == 0, "expected 0, got %s" % str(t) + + test.subdir('tdir2') + d = fs.Dir('tdir2') + f1 = test.workpath('tdir2', 'file1') + f2 = test.workpath('tdir2', 'file2') + test.write(f1, 'file1\n') + test.write(f2, 'file2\n') + fs.File(f1) + fs.File(f2) + current_time = float(int(time.time() / 2) * 2) + t1 = current_time - 4.0 + t2 = current_time - 2.0 + os.utime(f1, (t1 - 2.0, t1)) + os.utime(f2, (t2 - 2.0, t2)) + t = d.get_timestamp() + assert t == t2, "expected %f, got %f" % (t2, t) + #XXX test get_prevsiginfo() skey = fs.Entry('eee.x').scanner_key() |
