659 lines · plain
1add_custom_target(libc_unistd_unittests)2 3add_subdirectory(testdata)4 5add_libc_unittest(6 access_test7 SUITE8 libc_unistd_unittests9 SRCS10 access_test.cpp11 DEPENDS12 libc.include.unistd13 libc.src.errno.errno14 libc.src.fcntl.open15 libc.src.unistd.access16 libc.src.unistd.close17 libc.src.unistd.unlink18 libc.test.UnitTest.ErrnoCheckingTest19 libc.test.UnitTest.ErrnoSetterMatcher20)21 22add_libc_unittest(23 chdir_test24 SUITE25 libc_unistd_unittests26 SRCS27 chdir_test.cpp28 DEPENDS29 libc.hdr.fcntl_macros30 libc.include.unistd31 libc.src.errno.errno32 libc.src.unistd.chdir33 libc.src.unistd.close34 libc.src.fcntl.open35 libc.test.UnitTest.ErrnoCheckingTest36 libc.test.UnitTest.ErrnoSetterMatcher37)38 39add_libc_unittest(40 chown_test41 SUITE42 libc_unistd_unittests43 SRCS44 chown_test.cpp45 DEPENDS46 libc.hdr.fcntl_macros47 libc.include.unistd48 libc.src.errno.errno49 libc.src.unistd.chown50 libc.src.unistd.close51 libc.src.unistd.unlink52 libc.src.fcntl.open53 libc.src.unistd.getuid54 libc.src.unistd.getgid55 libc.test.UnitTest.ErrnoCheckingTest56 libc.test.UnitTest.ErrnoSetterMatcher57)58 59add_libc_unittest(60 dup_test61 SUITE62 libc_unistd_unittests63 SRCS64 dup_test.cpp65 DEPENDS66 libc.include.unistd67 libc.src.errno.errno68 libc.src.fcntl.open69 libc.src.unistd.close70 libc.src.unistd.dup71 libc.src.unistd.read72 libc.src.unistd.unlink73 libc.src.unistd.write74 libc.test.UnitTest.ErrnoCheckingTest75 libc.test.UnitTest.ErrnoSetterMatcher76)77 78add_libc_unittest(79 dup2_test80 SUITE81 libc_unistd_unittests82 SRCS83 dup2_test.cpp84 DEPENDS85 libc.include.unistd86 libc.src.errno.errno87 libc.src.fcntl.open88 libc.src.unistd.close89 libc.src.unistd.dup290 libc.src.unistd.read91 libc.src.unistd.unlink92 libc.src.unistd.write93 libc.test.UnitTest.ErrnoCheckingTest94 libc.test.UnitTest.ErrnoSetterMatcher95)96 97add_libc_unittest(98 dup3_test99 SUITE100 libc_unistd_unittests101 SRCS102 dup3_test.cpp103 DEPENDS104 libc.include.unistd105 libc.src.errno.errno106 libc.src.fcntl.open107 libc.src.unistd.close108 libc.src.unistd.dup3109 libc.src.unistd.read110 libc.src.unistd.unlink111 libc.src.unistd.write112 libc.test.UnitTest.ErrnoCheckingTest113 libc.test.UnitTest.ErrnoSetterMatcher114)115 116add_libc_unittest(117 faccessat_test118 SUITE119 libc_unistd_unittests120 SRCS121 faccessat_test.cpp122 DEPENDS123 libc.include.unistd124 libc.src.errno.errno125 libc.src.fcntl.open126 libc.src.unistd.faccessat127 libc.src.unistd.close128 libc.src.unistd.unlink129 libc.test.UnitTest.ErrnoCheckingTest130 libc.test.UnitTest.ErrnoSetterMatcher131)132 133add_libc_unittest(134 fchdir_test135 SUITE136 libc_unistd_unittests137 SRCS138 fchdir_test.cpp139 DEPENDS140 libc.include.unistd141 libc.src.errno.errno142 libc.src.fcntl.open143 libc.src.unistd.fchdir144 libc.src.unistd.close145 libc.test.UnitTest.ErrnoCheckingTest146 libc.test.UnitTest.ErrnoSetterMatcher147)148 149add_libc_unittest(150 fchown_test151 SUITE152 libc_unistd_unittests153 SRCS154 fchown_test.cpp155 DEPENDS156 libc.hdr.fcntl_macros157 libc.include.unistd158 libc.src.errno.errno159 libc.src.unistd.fchown160 libc.src.unistd.close161 libc.src.unistd.unlink162 libc.src.fcntl.open163 libc.src.unistd.getuid164 libc.src.unistd.getgid165 libc.test.UnitTest.ErrnoCheckingTest166 libc.test.UnitTest.ErrnoSetterMatcher167)168 169add_libc_unittest(170 ftruncate_test171 SUITE172 libc_unistd_unittests173 SRCS174 ftruncate_test.cpp175 DEPENDS176 libc.include.unistd177 libc.src.errno.errno178 libc.src.fcntl.open179 libc.src.unistd.close180 libc.src.unistd.read181 libc.src.unistd.ftruncate182 libc.src.unistd.unlink183 libc.src.unistd.write184 libc.src.__support.CPP.string_view185 libc.test.UnitTest.ErrnoCheckingTest186 libc.test.UnitTest.ErrnoSetterMatcher187)188 189add_libc_unittest(190 pread_pwrite_test191 SUITE192 libc_unistd_unittests193 SRCS194 pread_pwrite_test.cpp195 DEPENDS196 libc.include.unistd197 libc.src.errno.errno198 libc.src.fcntl.open199 libc.src.unistd.close200 libc.src.unistd.fsync201 libc.src.unistd.pread202 libc.src.unistd.pwrite203 libc.src.unistd.unlink204 libc.src.unistd.write205 libc.test.UnitTest.ErrnoCheckingTest206 libc.test.UnitTest.ErrnoSetterMatcher207)208 209add_libc_unittest(210 read_write_test211 SUITE212 libc_unistd_unittests213 SRCS214 read_write_test.cpp215 DEPENDS216 libc.include.unistd217 libc.src.errno.errno218 libc.src.fcntl.open219 libc.src.unistd.close220 libc.src.unistd.fsync221 libc.src.unistd.read222 libc.src.unistd.write223 libc.src.stdio.remove224 libc.test.UnitTest.ErrnoCheckingTest225 libc.test.UnitTest.ErrnoSetterMatcher226)227 228add_libc_unittest(229 link_test230 SUITE231 libc_unistd_unittests232 SRCS233 link_test.cpp234 DEPENDS235 libc.include.unistd236 libc.src.errno.errno237 libc.src.fcntl.open238 libc.src.unistd.close239 libc.src.unistd.link240 libc.src.unistd.unlink241 libc.test.UnitTest.ErrnoCheckingTest242 libc.test.UnitTest.ErrnoSetterMatcher243)244 245add_libc_unittest(246 linkat_test247 SUITE248 libc_unistd_unittests249 SRCS250 linkat_test.cpp251 DEPENDS252 libc.include.unistd253 libc.src.errno.errno254 libc.src.fcntl.open255 libc.src.unistd.close256 libc.src.unistd.linkat257 libc.src.unistd.unlink258 libc.test.UnitTest.ErrnoCheckingTest259 libc.test.UnitTest.ErrnoSetterMatcher260)261 262add_libc_unittest(263 lseek_test264 SUITE265 libc_unistd_unittests266 SRCS267 lseek_test.cpp268 DEPENDS269 libc.include.unistd270 libc.src.errno.errno271 libc.src.fcntl.open272 libc.src.unistd.close273 libc.src.unistd.lseek274 libc.src.unistd.read275 libc.test.UnitTest.ErrnoCheckingTest276 libc.test.UnitTest.ErrnoSetterMatcher277)278 279add_libc_unittest(280 pipe_test281 SUITE282 libc_unistd_unittests283 SRCS284 pipe_test.cpp285 DEPENDS286 libc.include.unistd287 libc.src.errno.errno288 libc.src.unistd.close289 libc.src.unistd.pipe290 libc.test.UnitTest.ErrnoCheckingTest291 libc.test.UnitTest.ErrnoSetterMatcher292)293 294add_libc_unittest(295 pipe2_test296 SUITE297 libc_unistd_unittests298 SRCS299 pipe2_test.cpp300 DEPENDS301 libc.include.unistd302 libc.src.errno.errno303 libc.src.unistd.close304 libc.src.unistd.pipe2305 libc.test.UnitTest.ErrnoCheckingTest306 libc.test.UnitTest.ErrnoSetterMatcher307)308 309add_libc_unittest(310 rmdir_test311 SUITE312 libc_unistd_unittests313 SRCS314 rmdir_test.cpp315 DEPENDS316 libc.hdr.fcntl_macros317 libc.src.errno.errno318 libc.src.sys.stat.mkdir319 libc.src.unistd.rmdir320 libc.test.UnitTest.ErrnoCheckingTest321 libc.test.UnitTest.ErrnoSetterMatcher322)323 324add_libc_unittest(325 swab_test326 SUITE327 libc_unistd_unittests328 SRCS329 swab_test.cpp330 DEPENDS331 libc.src.unistd.swab332)333 334add_libc_unittest(335 readlink_test336 SUITE337 libc_unistd_unittests338 SRCS339 readlink_test.cpp340 DEPENDS341 libc.include.unistd342 libc.src.errno.errno343 libc.src.unistd.readlink344 libc.src.string.string_utils345 libc.src.unistd.symlink346 libc.src.unistd.unlink347 libc.src.__support.CPP.string_view348 libc.test.UnitTest.ErrnoCheckingTest349 libc.test.UnitTest.ErrnoSetterMatcher350)351 352add_libc_unittest(353 readlinkat_test354 SUITE355 libc_unistd_unittests356 SRCS357 readlinkat_test.cpp358 DEPENDS359 libc.hdr.fcntl_macros360 libc.include.unistd361 libc.src.errno.errno362 libc.src.unistd.readlinkat363 libc.src.string.string_utils364 libc.src.unistd.symlink365 libc.src.unistd.unlink366 libc.src.__support.CPP.string_view367 libc.test.UnitTest.ErrnoCheckingTest368 libc.test.UnitTest.ErrnoSetterMatcher369)370 371add_libc_unittest(372 setsid_test373 SUITE374 libc_unistd_unittests375 SRCS376 setsid_test.cpp377 DEPENDS378 libc.src.unistd.setsid379)380 381add_libc_unittest(382 symlink_test383 SUITE384 libc_unistd_unittests385 SRCS386 symlink_test.cpp387 DEPENDS388 libc.include.unistd389 libc.src.errno.errno390 libc.src.fcntl.open391 libc.src.unistd.close392 libc.src.unistd.symlink393 libc.src.unistd.unlink394 libc.test.UnitTest.ErrnoCheckingTest395 libc.test.UnitTest.ErrnoSetterMatcher396)397 398add_libc_unittest(399 symlinkat_test400 SUITE401 libc_unistd_unittests402 SRCS403 symlinkat_test.cpp404 DEPENDS405 libc.include.unistd406 libc.src.errno.errno407 libc.src.fcntl.open408 libc.src.unistd.close409 libc.src.unistd.symlinkat410 libc.src.unistd.unlink411 libc.test.UnitTest.ErrnoCheckingTest412 libc.test.UnitTest.ErrnoSetterMatcher413)414 415add_libc_unittest(416 truncate_test417 SUITE418 libc_unistd_unittests419 SRCS420 truncate_test.cpp421 DEPENDS422 libc.include.unistd423 libc.src.errno.errno424 libc.src.fcntl.open425 libc.src.unistd.close426 libc.src.unistd.read427 libc.src.unistd.truncate428 libc.src.unistd.unlink429 libc.src.unistd.write430 libc.src.__support.CPP.string_view431 libc.test.UnitTest.ErrnoCheckingTest432 libc.test.UnitTest.ErrnoSetterMatcher433)434 435add_libc_unittest(436 unlink_test437 SUITE438 libc_unistd_unittests439 SRCS440 unlink_test.cpp441 DEPENDS442 libc.include.unistd443 libc.src.errno.errno444 libc.src.fcntl.open445 libc.src.unistd.close446 libc.src.unistd.unlink447 libc.test.UnitTest.ErrnoCheckingTest448 libc.test.UnitTest.ErrnoSetterMatcher449)450 451add_libc_unittest(452 unlinkat_test453 SUITE454 libc_unistd_unittests455 SRCS456 unlinkat_test.cpp457 DEPENDS458 libc.include.unistd459 libc.src.errno.errno460 libc.src.fcntl.open461 libc.src.fcntl.openat462 libc.src.unistd.close463 libc.src.unistd.unlinkat464 libc.test.UnitTest.ErrnoCheckingTest465 libc.test.UnitTest.ErrnoSetterMatcher466)467 468add_libc_unittest(469 gethostname_test470 SUITE471 libc_unistd_unittests472 SRCS473 gethostname_test.cpp474 DEPENDS475 libc.src.unistd.gethostname476 libc.src.errno.errno477 libc.test.UnitTest.ErrnoCheckingTest478)479 480add_libc_unittest(481 getgid_test482 SUITE483 libc_unistd_unittests484 SRCS485 getgid_test.cpp486 DEPENDS487 libc.src.unistd.getgid488)489 490add_libc_unittest(491 getpid_test492 SUITE493 libc_unistd_unittests494 SRCS495 getpid_test.cpp496 DEPENDS497 libc.src.unistd.getpid498)499 500add_libc_unittest(501 getppid_test502 SUITE503 libc_unistd_unittests504 SRCS505 getppid_test.cpp506 DEPENDS507 libc.src.unistd.getppid508)509 510add_libc_unittest(511 getsid_test512 SUITE513 libc_unistd_unittests514 SRCS515 getsid_test.cpp516 DEPENDS517 libc.src.unistd.getsid518 libc.test.UnitTest.ErrnoCheckingTest519 libc.test.UnitTest.ErrnoSetterMatcher520)521 522add_libc_unittest(523 getuid_test524 SUITE525 libc_unistd_unittests526 SRCS527 getuid_test.cpp528 DEPENDS529 libc.src.unistd.getuid530)531 532add_libc_unittest(533 isatty_test534 SUITE535 libc_unistd_unittests536 SRCS537 isatty_test.cpp538 DEPENDS539 libc.src.unistd.isatty540 libc.src.fcntl.open541 libc.src.unistd.close542 libc.src.errno.errno543 libc.test.UnitTest.ErrnoCheckingTest544 libc.test.UnitTest.ErrnoSetterMatcher545)546 547add_libc_unittest(548 geteuid_test549 SUITE550 libc_unistd_unittests551 SRCS552 geteuid_test.cpp553 DEPENDS554 libc.src.unistd.geteuid555)556 557add_libc_unittest(558 syscall_test559 SUITE560 libc_unistd_unittests561 SRCS562 syscall_test.cpp563 DEPENDS564 libc.include.unistd565 libc.hdr.fcntl_macros566 libc.include.sys_syscall567 libc.src.errno.errno568 libc.src.unistd.__llvm_libc_syscall569 libc.test.UnitTest.ErrnoCheckingTest570 libc.test.UnitTest.ErrnoSetterMatcher571)572 573 574add_libc_unittest(575 sysconf_test576 SUITE577 libc_unistd_unittests578 SRCS579 sysconf_test.cpp580 DEPENDS581 libc.include.unistd582 libc.src.unistd.sysconf583)584 585add_libc_unittest(586 fpathconf_test587 SUITE588 libc_unistd_unittests589 SRCS590 fpathconf_test.cpp591 DEPENDS592 libc.hdr.limits_macros593 libc.hdr.unistd_macros594 libc.hdr.sys_stat_macros595 libc.src.unistd.fpathconf596 libc.src.fcntl.open597 libc.src.unistd.close598 libc.test.UnitTest.ErrnoCheckingTest599 libc.test.UnitTest.ErrnoSetterMatcher600)601 602add_libc_unittest(603 pathconf_test604 SUITE605 libc_unistd_unittests606 SRCS607 pathconf_test.cpp608 DEPENDS609 libc.hdr.limits_macros610 libc.hdr.unistd_macros611 libc.hdr.sys_stat_macros612 libc.src.unistd.pathconf613 libc.src.fcntl.open614 libc.src.unistd.close615 libc.test.UnitTest.ErrnoCheckingTest616 libc.test.UnitTest.ErrnoSetterMatcher617)618 619add_libc_test(620 getopt_test621 HERMETIC_TEST_ONLY # Uses libc's own stderr622 SUITE623 libc_unistd_unittests624 SRCS625 getopt_test.cpp626 DEPENDS627 libc.src.unistd.getopt628 libc.src.__support.CPP.array629 libc.src.stdio.fopencookie630 libc.src.stdio.fflush631)632 633add_libc_test(634 getentropy_test635 SUITE636 libc_unistd_unittests637 SRCS638 getentropy_test.cpp639 DEPENDS640 libc.src.unistd.getentropy641 libc.src.errno.errno642 libc.test.UnitTest.ErrnoCheckingTest643 libc.test.UnitTest.ErrnoSetterMatcher644)645 646if(LLVM_LIBC_FULL_BUILD)647 add_libc_test(648 _exit_test649 UNIT_TEST_ONLY650 SUITE651 libc_unistd_unittests652 SRCS653 _exit_test.cpp654 DEPENDS655 libc.include.unistd656 libc.src.unistd._exit657 )658endif()659