summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/sqlite/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/sqlite/package.py')
-rw-r--r--var/spack/repos/builtin/packages/sqlite/package.py39
1 files changed, 38 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/sqlite/package.py b/var/spack/repos/builtin/packages/sqlite/package.py
index b400965b3f..db456cb0d7 100644
--- a/var/spack/repos/builtin/packages/sqlite/package.py
+++ b/var/spack/repos/builtin/packages/sqlite/package.py
@@ -3,7 +3,6 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
from spack import architecture
@@ -129,3 +128,41 @@ class Sqlite(AutotoolsPackage):
cc(self.compiler.cc_pic_flag, '-lm', '-shared',
'extension-functions.c', '-o', libraryname)
install(libraryname, self.prefix.lib)
+
+ def _test_example(self):
+ """Ensure a sequence of commands on example db are successful."""
+
+ test_data_dir = self.test_suite.current_test_data_dir
+ db_filename = test_data_dir.join('packages.db')
+ exe = 'sqlite3'
+
+ # Ensure the database only contains one table
+ expected = 'packages'
+ reason = 'test: ensuring only table is "{0}"'.format(expected)
+ self.run_test(exe, [db_filename, '.tables'], expected, installed=True,
+ purpose=reason, skip_missing=False)
+
+ # Ensure the database dump matches expectations, where special
+ # characters are replaced with spaces in the expected and actual
+ # output to avoid pattern errors.
+ reason = 'test: checking dump output'
+ expected = get_escaped_text_output(test_data_dir.join('dump.out'))
+ self.run_test(exe, [db_filename, '.dump'], expected, installed=True,
+ purpose=reason, skip_missing=False)
+
+ def _test_version(self):
+ """Perform version check on the installed package."""
+ exe = 'sqlite3'
+ vers_str = str(self.spec.version)
+
+ reason = 'test: ensuring version of {0} is {1}'.format(exe, vers_str)
+ self.run_test(exe, '-version', vers_str, installed=True,
+ purpose=reason, skip_missing=False)
+
+ def test(self):
+ """Perform smoke tests on the installed package."""
+ # Perform a simple version check
+ self._test_version()
+
+ # Run a sequence of operations
+ self._test_example()