llvm-project/libc/utils/UnitTest
Michael Jones 9ac66f0650 [libc][cmake] split fputil into individual targets
The libc.src.__support.FPUtil.fputil target encompassed many unrelated
files, and provided a lot of hidden dependencies. This patch splits out
all of these files into component parts and cleans up the cmake files
that used them. It does not touch any source files for simplicity, but
there may be changes made to them in future patches.

Reviewed By: lntue

Differential Revision: https://reviews.llvm.org/D132980
2022-08-31 10:44:52 -07:00
..
CMakeLists.txt [libc][cmake] split fputil into individual targets 2022-08-31 10:44:52 -07:00
FPExceptMatcher.cpp [libc][NFC] Move test related pieces from FPUtil to util/UnitTest. 2021-10-29 15:37:30 +00:00
FPExceptMatcher.h [libc][NFC] Move test related pieces from FPUtil to util/UnitTest. 2021-10-29 15:37:30 +00:00
FPMatcher.cpp [libc][NFC] Use STL case for type_traits 2022-07-29 09:57:03 +00:00
FPMatcher.h [libc][NFC] Use STL case for type_traits 2022-07-29 09:57:03 +00:00
FuchsiaTest.h [libc] Add Fuchsia implementation of ::testing::Test 2022-06-13 21:03:51 +00:00
LibcTest.cpp [NFC][libc] Move Uint implementation to parent directory 2022-08-25 12:42:06 +00:00
LibcTest.h [libc][NFC] Use STL case for string_view 2022-08-22 15:25:14 +00:00
LibcTestMain.cpp [libc] Add option to run specific tests 2021-07-23 16:08:13 +00:00
MemoryMatcher.cpp [NFC][libc] Switch mem* tests from ArrayRef to span 2022-08-22 09:58:35 +00:00
MemoryMatcher.h [NFC][libc] Switch mem* tests from ArrayRef to span 2022-08-22 09:58:35 +00:00
PlatformDefs.h [libc] Clean up Windows macros 2021-07-23 21:12:36 +00:00
PrintfMatcher.cpp [libc] move printf to use StringViews 2022-08-24 10:28:31 -07:00
PrintfMatcher.h [libc] Add Printf FormatSection Matcher 2022-04-22 14:21:39 -07:00
README.md
StringUtils.h [libc][NFC] Use STL case for type_traits 2022-07-29 09:57:03 +00:00
Test.h [libc][NFC] add macro for fuchsia to switch test backend to zxtest 2021-01-13 21:28:02 +00:00

README.md

The LLVM libc unit test framework

This directory contains a lightweight implementation of a gtest like unit test framework for LLVM libc.

Why not gtest?

While gtest is great, featureful and time tested, it uses the C and C++ standard libraries. Hence, using it to test LLVM libc (which is also an implementation of the C standard libraries) causes various kinds of mixup/conflict problems.

How is it different from gtest?

LLVM libc's unit test framework is much less featureful as compared to gtest. But, what is available strives to be exactly like gtest.

Will it be made as featureful as gtest in future?

It is not clear if LLVM libc needs/will need every feature of gtest. We only intend to extend it on an as needed basis. Hence, it might never be as featureful as gtest.