summaryrefslogtreecommitdiff
path: root/src/test/test-condition.c
diff options
context:
space:
mode:
authorSteve Muir <muir@fb.com>2016-07-27 14:19:37 -0700
committerDavide Cavalca <dcavalca@fb.com>2016-07-29 14:30:39 -0700
commit40a23924efc64598d580b5fd92ef3937583d1fc9 (patch)
treecfa2a2c138c0a3995b7cfc7bd01a4733ccef02e7 /src/test/test-condition.c
parente4d214efc20245c37d9b1e3a7e35c6a4443da131 (diff)
tests: don't test hostname if it looks like an id128
The condition tests for hostname will fail if hostname looks like an id128. The test function attempts to convert hostname to an id128, and if that succeeds compare it to the machine ID (presumably because the 'hostname' condition test is overloaded to also test machine ID). That will typically fail, and unfortunately the 'mock' utility generates a random hostname that happens to have the same format as an id128, thus causing a test failure.
Diffstat (limited to 'src/test/test-condition.c')
-rw-r--r--src/test/test-condition.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/test/test-condition.c b/src/test/test-condition.c
index 987862f1c6..4ef61ebfa5 100644
--- a/src/test/test-condition.c
+++ b/src/test/test-condition.c
@@ -25,6 +25,7 @@
#include "audit-util.h"
#include "condition.h"
#include "hostname-util.h"
+#include "id128-util.h"
#include "ima-util.h"
#include "log.h"
#include "macro.h"
@@ -142,9 +143,14 @@ static void test_condition_test_host(void) {
hostname = gethostname_malloc();
assert_se(hostname);
- condition = condition_new(CONDITION_HOST, hostname, false, false);
- assert_se(condition_test(condition));
- condition_free(condition);
+ /* if hostname looks like an id128 then skip testing it */
+ if (id128_is_valid(hostname)) {
+ log_notice("hostname is an id128, skipping test");
+ } else {
+ condition = condition_new(CONDITION_HOST, hostname, false, false);
+ assert_se(condition_test(condition));
+ condition_free(condition);
+ }
}
static void test_condition_test_architecture(void) {