diff options
author | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2013-07-18 08:30:06 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-08-22 00:52:14 -0400 |
commit | 143bfdaf0b890fa7acadf02d1eafacaef1b696bd (patch) | |
tree | 5a640d40bc7489c5933aac824f2bf23ecd2818ff /src/journal/test-catalog.c | |
parent | 67ccd1c4b821b142ccd7b4bb292d9947aea8c581 (diff) |
test: Make testing work on systems without or old systemd
* Introduce a macro to conditionally execute tests. This avoids
skipping the entire test if some parts require systemd
* Skip the journal tests when no /etc/machine-id is present
* Change test-catalog to load the catalog from the source directory
of systemd.
* /proc/PID/comm got introduced in v2.6.33 but travis is still
using v2.6.32.
* Enable make check and make distcheck on the travis build
* Use -D"CATALOG_DIR=STR($(abs_top_srcdir)/catalog)" as a STRINGIY
would result in the path '/home/ich/source/linux' to be expanded
to '/home/ich/source/1' as linux is defined to 1.
Diffstat (limited to 'src/journal/test-catalog.c')
-rw-r--r-- | src/journal/test-catalog.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/journal/test-catalog.c b/src/journal/test-catalog.c index 987867f0c8..5db5bed8de 100644 --- a/src/journal/test-catalog.c +++ b/src/journal/test-catalog.c @@ -31,6 +31,16 @@ #include "sd-messages.h" #include "catalog.h" +static const char *catalog_dirs[] = { + CATALOG_DIR, + NULL, +}; + +static const char *no_catalog_dirs[] = { + "/bin/hopefully/with/no/catalog", + NULL +}; + static void test_import(Hashmap *h, struct strbuf *sb, const char* contents, ssize_t size, int code) { int r; @@ -100,9 +110,13 @@ static void test_catalog_update(void) { r = catalog_update(database, NULL, NULL); assert(r >= 0); - /* Note: this might actually not find anything, if systemd was - * not installed before. That should be fine too. */ - r = catalog_update(database, NULL, catalog_file_dirs); + /* Test what happens if there are no files in the directory. */ + r = catalog_update(database, NULL, no_catalog_dirs); + assert(r >= 0); + + /* Make sure that we at least have some files loaded or the + catalog_list below will fail. */ + r = catalog_update(database, NULL, catalog_dirs); assert(r >= 0); } |