MARIADB-CLIENT-TEST(1)

πŸ’– MARIADB-CLIENT-TEST πŸ’–

okay bestie, welcome to the MariaDB Database System corner of the manual, where the page is literally called MARIADB-CLIENT-TEST(1) and it's about a little test client that goes feral on the client API. buckle up πŸŽ€


✨ NAME ✨

mariadb-client-test β€” test client API (and plot twist: mariadb-client-test is now a symlink to mariadb-client-test)

mariadb-client-test-embedded β€” test client API for embedded server (and also plot twist: mariadb-client-test-embedded is now a symlink to mariadb-client-test-embedded)

no fr fr, that's what it says, we don't make the symlink rules, we just report them πŸ’…


✨ SYNOPSIS ✨

mariadb-client-test [options] [test_name] ...

mariadb-client-test-embedded [options] [test_name] ...

✨ DESCRIPTION ✨

so. the mariadb-client-test program exists to test aspects of the MariaDB client API that cannot be tested using mariadb-test and its test language. like, mariadb-test tried, but it can't reach these parts. it's giving "you had one job and it wasn't this one." 😭

mariadb-client-test-embedded is the same energy but for testing the embedded server. both of these programs are run as part of the test suite, they're not just out here vibing for fun.

the source code lives in tests/mariadb-client-test.c in a source distribution β€” and honestly? it's a great source of examples showing how to use various features of the client API. like, read it, it's giving tutorial but make it real code πŸ¦‹

mariadb-client-test gets used by a test with the same name in the main tests suite of mariadb-test-run.pl, but you can also just run it directly if that's your moment. and here's the thing that makes it different from the other programs listed here: it does not read an external description of what tests to run. nope. all the tests are coded into the program, which is written to cover all aspects of the C language API. everything, everywhere, all at once, but on purpose ✨

mariadb-client-test supports the following options:

  • --help, -? β€” display a help message and exit. iconic behaviour, honestly.
  • --basedir=dir_name, -b dir_name β€” the base directory for the tests.
  • --count=count, -t count β€” the number of times to execute the tests. yes you can run them again. and again. and again.
  • --database=db_name, -D db_name β€” the database to use.
  • --debug[=debug_options], -#[debug_options] β€” write a debugging log if MariaDB is built with debugging support. the default debug_options value is 'd:t:o,/tmp/mariadb-client-test.trace'. that path? memorize it, bestie πŸ“
  • --getopt-ll-test=option, -g option β€” option to use for testing bugs in the getopt library. we're hunting bugs, lowkey detective work πŸ”
  • --host=host_name, -h host_name β€” connect to the MariaDB server on the given host.
  • --password[=password], -p[password] β€” the password to use when connecting to the server. ⚠️ important: if you use the short option form (-p), you cannot have a space between the option and the password. and if you omit the password value following the --password or -p option on the command line, you are prompted for one. so it'll ask. it always asks. πŸ™ˆ
  • --port=port_num, -P port_num β€” the TCP/IP port number to use for the connection.
  • --server-arg=arg, -A arg β€” argument to send to the embedded server.
  • --show-tests, -T β€” show all test names. the whole roster, the full lineup πŸ‘‘
  • --silent, -s β€” be more silent. shhh. quieter. the vibe check is subtle πŸ’œ
  • --socket=path, -S path β€” the socket file to use when connecting to localhost (which is the default host). yes, localhost is the default, we said it, it's canon.
  • --testcase, -c β€” this one's used when called from mariadb-test-run.pl, so that mariadb-client-test may optionally behave in a different way than if called manually β€” for example by skipping some tests. and currently? there is no difference in behavior, but the option is included in order to make this possible. it's a "for future us" moment, main character energy for an option that does nothing yet 🌈
  • --user=user_name, -u user_name β€” the MariaDB user name to use when connecting to the server.
  • -v dir_name, --vardir=dir_name β€” the data directory for tests. the default is mariadb-test/var. write that down ✍️

Copyright Β© 2007, 2010, Oracle and/or its affiliates, 2010-2025 MariaDB Foundation

This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/.

okay so the license stuff is legally required and also lowkey slay of them to open source it, but bestie please actually read the no-warranty part, it's there for a reason 😭

✨ SEE ALSO ✨

For more information, please refer to the MariaDB Documentation, available online at https://mariadb.com/docs/


✨ AUTHOR ✨

MariaDB Foundation (http://www.mariadb.org/).


and that's the whole page, periodt πŸ’… this was MariaDB 11.8, dated 5 March 2025, and it's the MARIADB-CLIENT-TEST(1) manual page from the MariaDB Database System. go run your tests, bestie, you got this 🫢✨

πŸ“¦ where this page comes from