From 67f96585500a67236e6df2d633acf64dfe16fe5f Mon Sep 17 00:00:00 2001 From: Don Anderson Date: Sun, 15 Jan 2017 22:21:24 -0500 Subject: WT-3121 In the test suite, create a standard way to load extensions (#3241) * In the test suite, create a standard way to load extensions. Most examples of overriding setUpConnectionOpen() can now be handled by a combination of conn_config (as variable or method) and conn_extensions (as variable or method). * conn_config when defined as a method, now only takes the self argument, clean up the callers. * Refactored several more tests to use conn_config() in favor of overriding setUpConnectionOpen(). --- test/suite/test_encrypt03.py | 36 ++++++------------------------------ 1 file changed, 6 insertions(+), 30 deletions(-) (limited to 'test/suite/test_encrypt03.py') diff --git a/test/suite/test_encrypt03.py b/test/suite/test_encrypt03.py index cf459190637..0809c16c6d1 100644 --- a/test/suite/test_encrypt03.py +++ b/test/suite/test_encrypt03.py @@ -50,37 +50,13 @@ class test_encrypt03(wttest.WiredTigerTestCase): ] scenarios = make_scenarios(types, encrypt) - # Override WiredTigerTestCase, we have extensions. - def setUpConnectionOpen(self, dir): - encarg = 'encryption=(name={0}{1}),'.format( - self.sys_encrypt, self.sys_encrypt_args) - extarg = self.extensionArg([('encryptors', self.sys_encrypt), - ('encryptors', self.file_encrypt)]) - self.pr('encarg = ' + encarg + ' extarg = ' + extarg) - conn = self.wiredtiger_open(dir, - 'create,error_prefix="{0}: ",{1}{2}'.format( - self.shortid(), encarg, extarg)) - self.pr(`conn`) - return conn + def conn_extensions(self, extlist): + extlist.extension('encryptors', self.sys_encrypt) + extlist.extension('encryptors', self.file_encrypt) - # Return the wiredtiger_open extension argument for a shared library. - def extensionArg(self, exts): - extfiles = [] - for ext in exts: - (dirname, name) = ext - if name != None and name != 'none': - testdir = os.path.dirname(__file__) - extdir = os.path.join(run.wt_builddir, 'ext', dirname) - extfile = os.path.join( - extdir, name, '.libs', 'libwiredtiger_' + name + '.so') - if not os.path.exists(extfile): - self.skipTest('extension "' + extfile + '" not built') - if not extfile in extfiles: - extfiles.append(extfile) - if len(extfiles) == 0: - return '' - else: - return ',extensions=["' + '","'.join(extfiles) + '"]' + def conn_config(self): + return 'encryption=(name={0}{1}),'.format( + self.sys_encrypt, self.sys_encrypt_args) # Create a table with encryption values that are in error. def test_encrypt(self): -- cgit v1.2.1 From f8c20c2b1c258126cc162721eccd51ea4282e1b7 Mon Sep 17 00:00:00 2001 From: David Hows Date: Wed, 18 Jan 2017 01:05:03 +1100 Subject: WT-3121 Make all ROTN encryption tests skipable (#3247) * WT-3121 test/suite: Make all tests skippable that use encryptors, collators, extractors in extensions. --- test/suite/test_encrypt03.py | 1 + 1 file changed, 1 insertion(+) (limited to 'test/suite/test_encrypt03.py') diff --git a/test/suite/test_encrypt03.py b/test/suite/test_encrypt03.py index 0809c16c6d1..302572bd044 100644 --- a/test/suite/test_encrypt03.py +++ b/test/suite/test_encrypt03.py @@ -51,6 +51,7 @@ class test_encrypt03(wttest.WiredTigerTestCase): scenarios = make_scenarios(types, encrypt) def conn_extensions(self, extlist): + extlist.skip_if_missing = True extlist.extension('encryptors', self.sys_encrypt) extlist.extension('encryptors', self.file_encrypt) -- cgit v1.2.1