summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2024-01-26 12:43:43 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2024-01-26 13:48:05 +0300
commit4f18f07c8edc7a1f770ef77c755f141b4df5d258 (patch)
treec697b02ac065a9b4d300ba7a9ab49cfab0cf8310
parentcc5a639dda10d086fe98d5a4753822120b280dcf (diff)
Add odb-tests package as test dependency for libodb-sqlite package
-rw-r--r--libodb-sqlite/manifest1
-rw-r--r--odb-tests/build/root.build27
2 files changed, 17 insertions, 11 deletions
diff --git a/libodb-sqlite/manifest b/libodb-sqlite/manifest
index 5863a54..0b48cda 100644
--- a/libodb-sqlite/manifest
+++ b/libodb-sqlite/manifest
@@ -20,3 +20,4 @@ depends: * bpkg >= 0.16.0-
depends: libsqlite3 ^3.6.18
depends: libodb == $
depends: * cli ^1.2.0- ? ($config.libodb_sqlite.develop)
+tests: odb-tests == $ config.odb_tests.database+=sqlite
diff --git a/odb-tests/build/root.build b/odb-tests/build/root.build
index 5336399..59e3a1b 100644
--- a/odb-tests/build/root.build
+++ b/odb-tests/build/root.build
@@ -10,6 +10,14 @@ ixx{*}: extension = ixx
txx{*}: extension = txx
cxx{*}: extension = cxx
+define sql: file
+sql{*}: extension = sql
+
+define xml: file
+xml{*}: extension = xml
+
+skeleton = ($build.mode == 'skeleton')
+
# List of the identifiers of the databases to compile and run the tests
# against. The valid identifiers are mysql, sqlite, pgsql, oracle, and mssql.
#
@@ -17,11 +25,14 @@ cxx{*}: extension = cxx
#
config [strings] config.odb_tests.database
-assert ($defined(config.odb_tests.database) && \
- $size($config.odb_tests.database) > 0) \
+assert ($skeleton || \
+ ($defined(config.odb_tests.database) && \
+ $size($config.odb_tests.database) > 0)) \
'at least one database must be configured via config.odb_tests.database variable'
-databases = $config.odb_tests.database
+databases = ($defined(config.odb_tests.database) \
+ ? $config.odb_tests.database \
+ : )
mysql = false
sqlite = false
@@ -59,7 +70,7 @@ for db: $databases
config [bool] config.odb_tests.multi_database ?= ($size($databases) > 1)
multi = $config.odb_tests.multi_database
-assert ($multi || $size($databases) == 1) \
+assert ($multi || $size($databases) < 2) \
'only one database can be configured if config.odb_tests.multi_database value is false'
# Database connections.
@@ -122,13 +133,7 @@ config [uint64] config.odb_tests.mysql.port
#
config [path] config.odb_tests.mysql.socket
-define sql: file
-sql{*}: extension = sql
-
-define xml: file
-xml{*}: extension = xml
-
-if ($build.mode != 'skeleton')
+if! $skeleton
{
if ($cxx.target.system == 'win32-msvc')
cxx.poptions += -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS