[svn] commit: r2766 - in /branches/trac315: ./ src/lib/config/ src/lib/config/testdata/ src/lib/python/isc/config/tests/

BIND 10 source code commits bind10-changes at lists.isc.org
Thu Aug 19 23:41:02 UTC 2010


Author: jinmei
Date: Thu Aug 19 23:41:02 2010
New Revision: 2766

Log:
generate config/testdata/b10-config.db at build time from a master file.
so that it can be overridden safely.

Added:
    branches/trac315/src/lib/config/testdata/Makefile.am
    branches/trac315/src/lib/config/testdata/b10-config.db.master
      - copied unchanged from r2764, trunk/src/lib/config/testdata/b10-config.db
Removed:
    branches/trac315/src/lib/config/testdata/b10-config.db
Modified:
    branches/trac315/configure.ac
    branches/trac315/src/lib/config/Makefile.am
    branches/trac315/src/lib/python/isc/config/tests/Makefile.am
    branches/trac315/src/lib/python/isc/config/tests/cfgmgr_test.py

Modified: branches/trac315/configure.ac
==============================================================================
--- branches/trac315/configure.ac (original)
+++ branches/trac315/configure.ac Thu Aug 19 23:41:02 2010
@@ -433,6 +433,7 @@
                  src/lib/python/isc/notify/tests/Makefile
                  src/lib/config/Makefile
                  src/lib/config/tests/Makefile
+                 src/lib/config/testdata/Makefile
                  src/lib/dns/Makefile
                  src/lib/dns/tests/Makefile
                  src/lib/dns/python/Makefile

Modified: branches/trac315/src/lib/config/Makefile.am
==============================================================================
--- branches/trac315/src/lib/config/Makefile.am (original)
+++ branches/trac315/src/lib/config/Makefile.am Thu Aug 19 23:41:02 2010
@@ -1,4 +1,4 @@
-SUBDIRS = . tests
+SUBDIRS = . testdata tests
 
 AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
 AM_CPPFLAGS += -I$(top_builddir)/src/lib/cc
@@ -13,7 +13,7 @@
 EXTRA_DIST += testdata/b10-config-bad2.db
 EXTRA_DIST += testdata/b10-config-bad3.db
 EXTRA_DIST += testdata/b10-config-bad4.db
-EXTRA_DIST += testdata/b10-config.db
+EXTRA_DIST += testdata/b10-config.db.master #.db will be auto-generated
 EXTRA_DIST += testdata/data22_1.data
 EXTRA_DIST += testdata/data22_2.data
 EXTRA_DIST += testdata/data22_3.data

Modified: branches/trac315/src/lib/python/isc/config/tests/Makefile.am
==============================================================================
--- branches/trac315/src/lib/python/isc/config/tests/Makefile.am (original)
+++ branches/trac315/src/lib/python/isc/config/tests/Makefile.am Thu Aug 19 23:41:02 2010
@@ -7,9 +7,12 @@
 PYCOVERAGE = $(PYTHON)
 # test using command-line arguments, so use check-local target instead of TESTS
 check-local:
+	ret=0 ; \
 	for pytest in $(PYTESTS) ; do \
 	echo Running test: $$pytest ; \
 	env PYTHONPATH=$(abs_top_srcdir)/src/lib/python:$(abs_top_builddir)/src/lib/python \
 	CONFIG_TESTDATA_PATH=$(abs_top_srcdir)/src/lib/config/testdata \
-	$(PYCOVERAGE) $(abs_srcdir)/$$pytest ; \
-	done
+	CONFIG_WR_TESTDATA_PATH=$(abs_top_builddir)/src/lib/config/testdata \
+	$(PYCOVERAGE) $(abs_srcdir)/$$pytest || ret=1; \
+	done; \
+	exit $$ret

Modified: branches/trac315/src/lib/python/isc/config/tests/cfgmgr_test.py
==============================================================================
--- branches/trac315/src/lib/python/isc/config/tests/cfgmgr_test.py (original)
+++ branches/trac315/src/lib/python/isc/config/tests/cfgmgr_test.py Thu Aug 19 23:41:02 2010
@@ -28,19 +28,20 @@
 class TestConfigManagerData(unittest.TestCase):
     def setUp(self):
         self.data_path = os.environ['CONFIG_TESTDATA_PATH']
-        self.config_manager_data = ConfigManagerData(self.data_path)
+        self.writable_data_path = os.environ['CONFIG_WR_TESTDATA_PATH']
+        self.config_manager_data = ConfigManagerData(self.writable_data_path)
         self.assert_(self.config_manager_data)
 
     def test_init(self):
         self.assertEqual(self.config_manager_data.data['version'],
                          config_data.BIND10_CONFIG_DATA_VERSION)
         self.assertEqual(self.config_manager_data.data_path,
-                         self.data_path)
+                         self.writable_data_path)
         self.assertEqual(self.config_manager_data.db_filename,
-                         self.data_path + os.sep + "b10-config.db")
+                         self.writable_data_path + os.sep + "b10-config.db")
 
     def test_read_from_file(self):
-        ConfigManagerData.read_from_file(self.data_path)
+        ConfigManagerData.read_from_file(self.writable_data_path)
         self.assertRaises(ConfigManagerDataEmpty,
                           ConfigManagerData.read_from_file,
                           "doesnotexist")
@@ -84,14 +85,15 @@
 
     def setUp(self):
         self.data_path = os.environ['CONFIG_TESTDATA_PATH']
+        self.writable_data_path = os.environ['CONFIG_WR_TESTDATA_PATH']
         self.fake_session = FakeModuleCCSession()
-        self.cm = ConfigManager(self.data_path, self.fake_session)
+        self.cm = ConfigManager(self.writable_data_path, self.fake_session)
         self.name = "TestModule"
         self.spec = isc.config.module_spec_from_file(self.data_path + os.sep + "/spec2.spec")
     
     def test_init(self):
         self.assert_(self.cm.module_specs == {})
-        self.assert_(self.cm.data_path == self.data_path)
+        self.assert_(self.cm.data_path == self.writable_data_path)
         self.assert_(self.cm.config != None)
         self.assert_(self.fake_session.has_subscription("ConfigManager"))
         self.assert_(self.fake_session.has_subscription("Boss", "ConfigManager"))
@@ -293,8 +295,8 @@
 
 
 if __name__ == '__main__':
-    if not 'CONFIG_TESTDATA_PATH' in os.environ:
-        print("You need to set the environment variable CONFIG_TESTDATA_PATH to point to the directory containing the test data files")
+    if not 'CONFIG_TESTDATA_PATH' in os.environ or not 'CONFIG_WR_TESTDATA_PATH' in os.environ:
+        print("You need to set the environment variable CONFIG_TESTDATA_PATH and CONFIG_WR_TESTDATA_PATH to point to the directory containing the test data files")
         exit(1)
     unittest.main()
 




More information about the bind10-changes mailing list