From b1471ebbe9db90c472ff356bea6a7c8aedb45db9 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 2 Nov 2017 23:11:29 +0300 Subject: Add implementation --- tests/.gitignore | 3 +++ tests/basic/buildfile | 7 +++++++ tests/basic/driver.c | 23 +++++++++++++++++++++++ tests/basic/testscript | 5 +++++ tests/build/.gitignore | 1 + tests/build/bootstrap.build | 9 +++++++++ tests/build/root.build | 20 ++++++++++++++++++++ tests/buildfile | 5 +++++ 8 files changed, 73 insertions(+) create mode 100644 tests/.gitignore create mode 100644 tests/basic/buildfile create mode 100644 tests/basic/driver.c create mode 100644 tests/basic/testscript create mode 100644 tests/build/.gitignore create mode 100644 tests/build/bootstrap.build create mode 100644 tests/build/root.build create mode 100644 tests/buildfile (limited to 'tests') diff --git a/tests/.gitignore b/tests/.gitignore new file mode 100644 index 0000000..2e508a9 --- /dev/null +++ b/tests/.gitignore @@ -0,0 +1,3 @@ +driver +test/ +test-*/ diff --git a/tests/basic/buildfile b/tests/basic/buildfile new file mode 100644 index 0000000..4c93d2e --- /dev/null +++ b/tests/basic/buildfile @@ -0,0 +1,7 @@ +# file : tests/basic/buildfile +# copyright : Copyright (c) 2009-2017 Code Synthesis Tools CC +# license : GPLv2 with FOSS License Exception; see accompanying COPYING file + +import libs = libmysqlclient%lib{mysqlclient} + +exe{driver}: {h c}{*} $libs test{testscript} diff --git a/tests/basic/driver.c b/tests/basic/driver.c new file mode 100644 index 0000000..267f206 --- /dev/null +++ b/tests/basic/driver.c @@ -0,0 +1,23 @@ +/* + * file : tests/basic/driver.c + * copyright : Copyright (c) 2009-2017 Code Synthesis Tools CC + * license : GPLv2 with FOSS License Exception; see accompanying COPYING file + */ + +#include + +#include + +int +main () +{ + if (mysql_library_init (0, NULL, NULL)) + { + fprintf (stderr, "failed to initialize\n"); + return 1; + } + + printf ("libmysqlclient version: %s\n", mysql_get_client_info ()); + mysql_library_end (); + return 0; +} diff --git a/tests/basic/testscript b/tests/basic/testscript new file mode 100644 index 0000000..efd768e --- /dev/null +++ b/tests/basic/testscript @@ -0,0 +1,5 @@ +# file : tests/basic/testscript +# copyright : Copyright (c) 2016-2017 Code Synthesis Ltd +# license : GPLv2 with FOSS License Exception; see accompanying COPYING file + +$* >~'/libmysqlclient version: \d*.\d*.\d*(-.*)?/' diff --git a/tests/build/.gitignore b/tests/build/.gitignore new file mode 100644 index 0000000..225c27f --- /dev/null +++ b/tests/build/.gitignore @@ -0,0 +1 @@ +config.build diff --git a/tests/build/bootstrap.build b/tests/build/bootstrap.build new file mode 100644 index 0000000..d0577fd --- /dev/null +++ b/tests/build/bootstrap.build @@ -0,0 +1,9 @@ +# file : tests/build/bootstrap.build +# copyright : Copyright (c) 2016-2017 Code Synthesis Ltd +# license : GPLv2 with FOSS License Exception; see accompanying COPYING file + +project = # Unnamed subproject. + +using config +using dist +using test diff --git a/tests/build/root.build b/tests/build/root.build new file mode 100644 index 0000000..5c785b1 --- /dev/null +++ b/tests/build/root.build @@ -0,0 +1,20 @@ +# file : tests/build/root.build +# copyright : Copyright (c) 2016-2017 Code Synthesis Ltd +# license : GPLv2 with FOSS License Exception; see accompanying COPYING file + +# It would be good to make sure that libmysqlclient headers comply with an +# oldest C standard, but that's not the case. They use C++-style comments, so +# we don't specify any C standard. +# +using c + +h{*}: extension = h +c{*}: extension = c + +# Every exe{} in this subproject is by default a test. +# +exe{*}: test = true + +# Specify the test target for cross-testing. +# +test.target = $c.target diff --git a/tests/buildfile b/tests/buildfile new file mode 100644 index 0000000..d6154dd --- /dev/null +++ b/tests/buildfile @@ -0,0 +1,5 @@ +# file : tests/buildfile +# copyright : Copyright (c) 2016-2017 Code Synthesis Ltd +# license : GPLv2 with FOSS License Exception; see accompanying COPYING file + +./: {*/ -build/} -- cgit v1.1