mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
8da9950944
Let CMake parse files with a ".in" suffix containing includes Added default.release.in to replace default.release Explained in README New patch: replace 'include' with '#include' to avoid accidental matches
38 lines
1.9 KiB
Text
38 lines
1.9 KiB
Text
This directory contains collections of test runs that we run during our
|
|
integration and release testing. Each file contains zero or more lines,
|
|
with one invocation of mysql-test-run.pl on each. These invocations are
|
|
written so that, with the assumption that perl is in your search path,
|
|
any collection can run as a shell script or a batch file, with the parent
|
|
mysql-test directory being the current working directory.
|
|
|
|
During integration testing, we choose the collection to run by following
|
|
these steps:
|
|
|
|
1) We choose the extension to look for, based on these rules:
|
|
- If we're running a per-push test, we choose ".push" as the extension.
|
|
- If we're running a daily test, we choose ".daily" as the extension.
|
|
- If we're running a weekly test, we choose ".weekly" as the extension.
|
|
|
|
2) If there is a collection that has the same name as the branch we're
|
|
testing plus the extension as determined in step 1, we choose that
|
|
collection.
|
|
|
|
3) If the branch is unknown or we have removed all characters from it
|
|
and still not found a matching collection, we choose the name "default"
|
|
plus the extension determined in step 1. If there is no such file,
|
|
we give up and don't test anything at all.
|
|
|
|
4) If we haven't found a collection yet, we remove the last character from
|
|
the branch name and go back to step 2.
|
|
|
|
5) The commands from the collection are run line by line via execv() or
|
|
similar system calls. They are not run as a shell script. Shell
|
|
expansions are not guaranteed to work and most likely won't.
|
|
|
|
The directory may contain collections that are "super sets" of others,
|
|
identified by a file name suffix ".in". These files may contain lines
|
|
"#include <filename>", or lines with mysql-test-run.pl invocations.
|
|
CMake will create a new file without the .in suffix where
|
|
the include lines are replaced with the contents of the referred
|
|
file. Filename is local to the collections directory, and includes do
|
|
not nest.
|