summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Scanner/ScannerTests.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Scanner/ScannerTests.py')
-rw-r--r--src/engine/SCons/Scanner/ScannerTests.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/engine/SCons/Scanner/ScannerTests.py b/src/engine/SCons/Scanner/ScannerTests.py
index fce4078..2d0e47a 100644
--- a/src/engine/SCons/Scanner/ScannerTests.py
+++ b/src/engine/SCons/Scanner/ScannerTests.py
@@ -124,6 +124,21 @@ class ScannerHashTestCase(ScannerTestBase, unittest.TestCase):
self.failUnless(hash(dict.keys()[0]) == hash(None),
"did not hash Scanner base class as expected")
+class ScannerCheckTestCase(unittest.TestCase):
+ "Test the Scanner.Base class __hash__() method"
+ def setUp(self):
+ self.checked = {}
+ def runTest(self):
+ def my_scan(filename, env, target, *args):
+ return []
+ def check(node, s=self):
+ s.checked[node] = 1
+ return 1
+ s = SCons.Scanner.Base(my_scan, "Check", scan_check = check)
+ scanned = s.scan('x', DummyEnvironment(), DummyTarget())
+ self.failUnless(self.checked['x'] == 1,
+ "did not call check function")
+
def suite():
suite = unittest.TestSuite()
suite.addTest(ScannerPositionalTestCase())
@@ -131,6 +146,7 @@ def suite():
suite.addTest(ScannerPositionalArgumentTestCase())
suite.addTest(ScannerKeywordArgumentTestCase())
suite.addTest(ScannerHashTestCase())
+ suite.addTest(ScannerCheckTestCase())
return suite
if __name__ == "__main__":