![]() We should strive to have our own tests, except when there is overwhelming value in using another standard library's existing tests. The reason is that it ensures that implementations don't all start relying on the same interpretation of the Standard. The unique_ptr tests did not add any test coverage AFAICT, and the forward_like tests were moved to the style used everywhere in the libc++ test suite. Note that I got to this because this actually broke a downstream configuration where we use -ffreestanding. The signature of main() was not consistent with the signature we (need to) use everywhere in the test suite. Differential Revision: https://reviews.llvm.org/D134767 |
||
---|---|---|
.. | ||
unique.ptr.class | ||
unique.ptr.create | ||
unique.ptr.dltr | ||
unique.ptr.special | ||
README.TXT |
README.TXT
Test Naming and Directory Structure =================================== The directory structure for the unique_ptr class templates differs from the normal test directory naming conventions (e.g. matching the stable name in the standard). Instead of having a [unique.ptr.single] and [unique.ptr.runtime] directory, each containing their own tests, a single directory, "unique.ptr.class", contains both sets of tests. This allows the common behavior of the two unique_ptr specializations to be tested in the same place without duplication. Tests specific to [unique.ptr.single] have the suffix ".single.pass.cpp" and those specific to [unique.ptr.runtime] are named "*.runtime.pass.cpp". Tests for both specializations are named normally.