test: fix some tests when running inside a container
This commit is contained in:
committed by
Lennart Poettering
parent
536bfdab4c
commit
0eb3cc8850
@@ -164,7 +164,7 @@ int main(int argc, char *argv[]) {
|
|||||||
r = manager_new(SYSTEMD_USER, true, &m);
|
r = manager_new(SYSTEMD_USER, true, &m);
|
||||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) {
|
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) {
|
||||||
printf("Skipping test: manager_new: %s", strerror(-r));
|
printf("Skipping test: manager_new: %s", strerror(-r));
|
||||||
return -EXIT_TEST_SKIP;
|
return EXIT_TEST_SKIP;
|
||||||
}
|
}
|
||||||
assert_se(r >= 0);
|
assert_se(r >= 0);
|
||||||
assert_se(manager_startup(m, NULL, NULL) >= 0);
|
assert_se(manager_startup(m, NULL, NULL) >= 0);
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
#include "def.h"
|
#include "def.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "conf-parser.h"
|
#include "conf-parser.h"
|
||||||
|
#include "virt.h"
|
||||||
|
|
||||||
static void test_streq_ptr(void) {
|
static void test_streq_ptr(void) {
|
||||||
assert_se(streq_ptr(NULL, NULL));
|
assert_se(streq_ptr(NULL, NULL));
|
||||||
@@ -544,7 +545,8 @@ static void test_get_process_comm(void) {
|
|||||||
assert_se(r >= 0 || r == -EACCES);
|
assert_se(r >= 0 || r == -EACCES);
|
||||||
log_info("self strlen(environ): '%zd'", strlen(env));
|
log_info("self strlen(environ): '%zd'", strlen(env));
|
||||||
|
|
||||||
assert_se(get_ctty_devnr(1, &h) == -ENOENT);
|
if (!detect_container(NULL))
|
||||||
|
assert_se(get_ctty_devnr(1, &h) == -ENOENT);
|
||||||
|
|
||||||
getenv_for_pid(1, "PATH", &i);
|
getenv_for_pid(1, "PATH", &i);
|
||||||
log_info("pid1 $PATH: '%s'", strna(i));
|
log_info("pid1 $PATH: '%s'", strna(i));
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ my $udev_dev = "test/dev";
|
|||||||
my $udev_run = "test/run";
|
my $udev_run = "test/run";
|
||||||
my $udev_rules_dir = "$udev_run/udev/rules.d";
|
my $udev_rules_dir = "$udev_run/udev/rules.d";
|
||||||
my $udev_rules = "$udev_rules_dir/udev-test.rules";
|
my $udev_rules = "$udev_rules_dir/udev-test.rules";
|
||||||
|
my $EXIT_TEST_SKIP = 77;
|
||||||
|
|
||||||
my @tests = (
|
my @tests = (
|
||||||
{
|
{
|
||||||
@@ -1485,6 +1486,13 @@ if (!($<==0)) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# skip the test when running in a container
|
||||||
|
system("systemd-detect-virt", "-c", "-q");
|
||||||
|
if ($? >> 8 == 0) {
|
||||||
|
print "Running in a container, skipping the test.\n";
|
||||||
|
exit($EXIT_TEST_SKIP);
|
||||||
|
}
|
||||||
|
|
||||||
udev_setup();
|
udev_setup();
|
||||||
|
|
||||||
my $test_num = 1;
|
my $test_num = 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user