llvm-project/libcxx/test/std/utilities/smartptr/unique.ptr
Louis Dionne ee8dd43c24 [libc++] Remove MSVC tests checked into the libc++ test suite
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
2022-09-28 08:03:01 -04:00
..
unique.ptr.class [libc++] Granularize the rest of memory 2022-09-05 12:36:41 +02:00
unique.ptr.create [libc++] Implement P2273R3 (`constexpr` `unique_ptr`) 2022-09-03 18:49:50 +07:00
unique.ptr.dltr [libc++] Implement P2273R3 (`constexpr` `unique_ptr`) 2022-09-03 18:49:50 +07:00
unique.ptr.special [libc++] Implement P2273R3 (`constexpr` `unique_ptr`) 2022-09-03 18:49:50 +07:00
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.