summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Scanner/DirTests.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Scanner/DirTests.py')
-rw-r--r--src/engine/SCons/Scanner/DirTests.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/engine/SCons/Scanner/DirTests.py b/src/engine/SCons/Scanner/DirTests.py
index 0dde95e..5f180bc 100644
--- a/src/engine/SCons/Scanner/DirTests.py
+++ b/src/engine/SCons/Scanner/DirTests.py
@@ -50,6 +50,8 @@ class DummyEnvironment:
return self.fs.Dir(name)
def Entry(self, name):
return self.fs.Entry(name)
+ def File(self, name):
+ return self.fs.File(name)
def get_factory(self, factory):
return factory or self.fs.Entry
@@ -77,7 +79,7 @@ class DirScannerTestBase(unittest.TestCase):
self.test.write(['dir', 'sub', '.sconsign.dir'], "dir/.sconsign.dir\n")
self.test.write(['dir', 'sub', '.sconsign.pag'], "dir/.sconsign.pag\n")
-class DirScannerTestCase1(DirScannerTestBase):
+class DirScannerTestCase(DirScannerTestBase):
def runTest(self):
env = DummyEnvironment(self.test.workpath())
@@ -100,7 +102,7 @@ class DirScannerTestCase1(DirScannerTestBase):
sss = map(str, deps)
assert sss == expect, sss
-class DirScannerTestCase2(DirScannerTestBase):
+class DirEntryScannerTestCase(DirScannerTestBase):
def runTest(self):
env = DummyEnvironment(self.test.workpath())
@@ -114,10 +116,15 @@ class DirScannerTestCase2(DirScannerTestBase):
sss = map(str, deps)
assert sss == [], sss
+ # Make sure we don't blow up if handed a non-Dir node.
+ deps = s(env.File('dir/f1'), env, ())
+ sss = map(str, deps)
+ assert sss == [], sss
+
def suite():
suite = unittest.TestSuite()
- suite.addTest(DirScannerTestCase1())
- suite.addTest(DirScannerTestCase2())
+ suite.addTest(DirScannerTestCase())
+ suite.addTest(DirEntryScannerTestCase())
return suite
if __name__ == "__main__":