summaryrefslogtreecommitdiff
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
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.
-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) {