diff options
Diffstat (limited to 'test/syscalls')
-rw-r--r-- | test/syscalls/BUILD | 5 | ||||
-rw-r--r-- | test/syscalls/linux/affinity.cc | 1 | ||||
-rw-r--r-- | test/syscalls/linux/clock_gettime.cc | 7 | ||||
-rw-r--r-- | test/syscalls/linux/exec.cc | 8 |
4 files changed, 16 insertions, 5 deletions
diff --git a/test/syscalls/BUILD b/test/syscalls/BUILD index 51b482ccd..ccb3deda9 100644 --- a/test/syscalls/BUILD +++ b/test/syscalls/BUILD @@ -49,7 +49,10 @@ syscall_test(test = "//test/syscalls/linux:chroot_test") syscall_test(test = "//test/syscalls/linux:clock_getres_test") -syscall_test(test = "//test/syscalls/linux:clock_gettime_test") +syscall_test( + size = "medium", + test = "//test/syscalls/linux:clock_gettime_test", +) syscall_test(test = "//test/syscalls/linux:clock_nanosleep_test") diff --git a/test/syscalls/linux/affinity.cc b/test/syscalls/linux/affinity.cc index 8a16343d5..3b59d5777 100644 --- a/test/syscalls/linux/affinity.cc +++ b/test/syscalls/linux/affinity.cc @@ -155,6 +155,7 @@ TEST_F(AffinityTest, Sanity) { } TEST_F(AffinityTest, NewThread) { + SKIP_IF(CPU_COUNT(&mask_) < 3); ASSERT_NO_ERRNO(ClearLowestBit()); ASSERT_NO_ERRNO(ClearLowestBit()); EXPECT_THAT(sched_setaffinity(/*pid=*/0, sizeof(cpu_set_t), &mask_), diff --git a/test/syscalls/linux/clock_gettime.cc b/test/syscalls/linux/clock_gettime.cc index 5003928be..dee66c5a8 100644 --- a/test/syscalls/linux/clock_gettime.cc +++ b/test/syscalls/linux/clock_gettime.cc @@ -87,7 +87,12 @@ TEST(ClockGettime, JavaThreadTime) { ASSERT_EQ(0, pthread_getcpuclockid(pthread_self(), &clockid)); struct timespec tp; ASSERT_THAT(clock_getres(clockid, &tp), SyscallSucceeds()); - ASSERT_THAT(clock_gettime(clockid, &tp), SyscallSucceeds()); + EXPECT_TRUE(tp.tv_sec > 0 || tp.tv_nsec > 0); + // A thread cputime is updated each 10msec and there is no approximation + // if a task is running. + do { + ASSERT_THAT(clock_gettime(clockid, &tp), SyscallSucceeds()); + } while (tp.tv_sec == 0 && tp.tv_nsec == 0); EXPECT_TRUE(tp.tv_sec > 0 || tp.tv_nsec > 0); } diff --git a/test/syscalls/linux/exec.cc b/test/syscalls/linux/exec.cc index 1ef40b502..2d2287c2a 100644 --- a/test/syscalls/linux/exec.cc +++ b/test/syscalls/linux/exec.cc @@ -476,8 +476,10 @@ TEST(ProcSelfExe, ChangesAcrossExecve) { } TEST(ExecTest, CloexecNormalFile) { - const FileDescriptor fd_closed_on_exec = ASSERT_NO_ERRNO_AND_VALUE( - Open("/usr/share/zoneinfo", O_RDONLY | O_CLOEXEC)); + TempPath tempFile = ASSERT_NO_ERRNO_AND_VALUE( + TempPath::CreateFileWith(GetAbsoluteTestTmpdir(), "bar", 0755)); + const FileDescriptor fd_closed_on_exec = + ASSERT_NO_ERRNO_AND_VALUE(Open(tempFile.path(), O_RDONLY | O_CLOEXEC)); CheckOutput(WorkloadPath(kAssertClosedWorkload), {WorkloadPath(kAssertClosedWorkload), @@ -487,7 +489,7 @@ TEST(ExecTest, CloexecNormalFile) { // The assert closed workload exits with code 2 if the file still exists. We // can use this to do a negative test. const FileDescriptor fd_open_on_exec = - ASSERT_NO_ERRNO_AND_VALUE(Open("/usr/share/zoneinfo", O_RDONLY)); + ASSERT_NO_ERRNO_AND_VALUE(Open(tempFile.path(), O_RDONLY)); CheckOutput(WorkloadPath(kAssertClosedWorkload), {WorkloadPath(kAssertClosedWorkload), |