1 |
commit: c3b7a85534d328b640cad626286d0e1e6a883467 |
2 |
Author: matoro <matoro <AT> users <DOT> noreply <DOT> github <DOT> com> |
3 |
AuthorDate: Thu Sep 22 19:35:13 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Sep 25 01:27:17 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3b7a855 |
7 |
|
8 |
dev-db/mariadb-connector-c: enable tests |
9 |
|
10 |
Bug: https://bugs.gentoo.org/729944 |
11 |
Closes: https://github.com/gentoo/gentoo/pull/27398 |
12 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
13 |
|
14 |
.../mariadb-connector-c-3.2.5.ebuild | 24 ++++++++++++++++++++++ |
15 |
.../mariadb-connector-c-9999.ebuild | 24 ++++++++++++++++++++++ |
16 |
2 files changed, 48 insertions(+) |
17 |
|
18 |
diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-3.2.5.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-3.2.5.ebuild |
19 |
index f5de26435990..17e775c57359 100644 |
20 |
--- a/dev-db/mariadb-connector-c/mariadb-connector-c-3.2.5.ebuild |
21 |
+++ b/dev-db/mariadb-connector-c/mariadb-connector-c-3.2.5.ebuild |
22 |
@@ -43,12 +43,28 @@ DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}] |
23 |
) |
24 |
) |
25 |
" |
26 |
+BDEPEND="test? ( dev-db/mariadb[server] )" |
27 |
RDEPEND="${DEPEND}" |
28 |
PATCHES=( |
29 |
"${FILESDIR}"/gentoo-layout-3.0.patch |
30 |
"${FILESDIR}"/${PN}-3.1.3-fix-pkconfig-file.patch |
31 |
) |
32 |
|
33 |
+src_prepare() { |
34 |
+ # These tests the remote_io plugin which requires network access |
35 |
+ sed -i 's/{"test_remote1", test_remote1, TEST_CONNECTION_NEW, 0, NULL, NULL},//g' "unittest/libmariadb/misc.c" || die |
36 |
+ |
37 |
+ # These tests don't work with --skip-grant-tables |
38 |
+ sed -i 's/{"test_conc366", test_conc366, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
39 |
+ sed -i 's/{"test_conc66", test_conc66, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
40 |
+ |
41 |
+ # [Warning] Aborted connection 2078 to db: 'test' user: 'root' host: '' (Got an error reading communication packets) |
42 |
+ # Not sure about this one - might also require network access |
43 |
+ sed -i 's/{"test_default_auth", test_default_auth, TEST_CONNECTION_NONE, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
44 |
+ |
45 |
+ cmake_src_prepare |
46 |
+} |
47 |
+ |
48 |
multilib_src_configure() { |
49 |
# bug 508724 mariadb cannot use ld.gold |
50 |
tc-ld-disable-gold |
51 |
@@ -70,6 +86,14 @@ multilib_src_configure() { |
52 |
cmake_src_configure |
53 |
} |
54 |
|
55 |
+multilib_src_test() { |
56 |
+ mkdir -vp "${T}/mysql/data" || die |
57 |
+ mysql_install_db --no-defaults --datadir="${T}/mysql/data" || die |
58 |
+ mysqld --no-defaults --datadir="${T}/mysql/data" --socket="${T}/mysql/mysql.sock" --skip-grant-tables --skip-networking & |
59 |
+ while ! mysqladmin ping --socket="${T}/mysql/mysql.sock" --silent ; do sleep 1 ; done |
60 |
+ cd unittest/libmariadb && MYSQL_TEST_SOCKET="${T}/mysql/mysql.sock" MARIADB_CC_TEST=1 ctest --verbose || die |
61 |
+} |
62 |
+ |
63 |
multilib_src_install_all() { |
64 |
if ! use static-libs ; then |
65 |
find "${ED}" -name "*.a" -delete || die |
66 |
|
67 |
diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild |
68 |
index f31b6bb77e17..9799342c7442 100644 |
69 |
--- a/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild |
70 |
+++ b/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild |
71 |
@@ -43,12 +43,28 @@ DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}] |
72 |
) |
73 |
) |
74 |
" |
75 |
+BDEPEND="test? ( dev-db/mariadb[server] )" |
76 |
RDEPEND="${DEPEND}" |
77 |
PATCHES=( |
78 |
"${FILESDIR}"/gentoo-layout-3.0.patch |
79 |
"${FILESDIR}"/${PN}-3.1.3-fix-pkconfig-file.patch |
80 |
) |
81 |
|
82 |
+src_prepare() { |
83 |
+ # These tests the remote_io plugin which requires network access |
84 |
+ sed -i 's/{"test_remote1", test_remote1, TEST_CONNECTION_NEW, 0, NULL, NULL},//g' "unittest/libmariadb/misc.c" || die |
85 |
+ |
86 |
+ # These tests don't work with --skip-grant-tables |
87 |
+ sed -i 's/{"test_conc366", test_conc366, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
88 |
+ sed -i 's/{"test_conc66", test_conc66, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
89 |
+ |
90 |
+ # [Warning] Aborted connection 2078 to db: 'test' user: 'root' host: '' (Got an error reading communication packets) |
91 |
+ # Not sure about this one - might also require network access |
92 |
+ sed -i 's/{"test_default_auth", test_default_auth, TEST_CONNECTION_NONE, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die |
93 |
+ |
94 |
+ cmake_src_prepare |
95 |
+} |
96 |
+ |
97 |
multilib_src_configure() { |
98 |
# bug 508724 mariadb cannot use ld.gold |
99 |
tc-ld-disable-gold |
100 |
@@ -70,6 +86,14 @@ multilib_src_configure() { |
101 |
cmake_src_configure |
102 |
} |
103 |
|
104 |
+multilib_src_test() { |
105 |
+ mkdir -vp "${T}/mysql/data" || die |
106 |
+ mysql_install_db --no-defaults --datadir="${T}/mysql/data" || die |
107 |
+ mysqld --no-defaults --datadir="${T}/mysql/data" --socket="${T}/mysql/mysql.sock" --skip-grant-tables --skip-networking & |
108 |
+ while ! mysqladmin ping --socket="${T}/mysql/mysql.sock" --silent ; do sleep 1 ; done |
109 |
+ cd unittest/libmariadb && MYSQL_TEST_SOCKET="${T}/mysql/mysql.sock" MARIADB_CC_TEST=1 ctest --verbose || die |
110 |
+} |
111 |
+ |
112 |
multilib_src_install_all() { |
113 |
if ! use static-libs ; then |
114 |
find "${ED}" -name "*.a" -delete || die |