[libc] Enable custom logging in LibcTest
[llvm-project.git] / libc / test / src / string / mempcpy_test.cpp
blob5259874d25d600b17cf2bc75b64bb2e38bed650d
1 //===-- Unittests for mempcpy ---------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
9 #include "src/string/mempcpy.h"
10 #include "test/UnitTest/Test.h"
12 // Since this function just calls out to memcpy, and memcpy has its own unit
13 // tests, it is assumed that memcpy works. These tests are just for the specific
14 // mempcpy behavior (returning the end of what was copied).
15 TEST(LlvmLibcMempcpyTest, Simple) {
16 const char *src = "12345";
17 char dest[10];
18 void *result = __llvm_libc::mempcpy(dest, src, 6);
19 ASSERT_EQ(static_cast<char *>(result), dest + 6);
20 ASSERT_STREQ(src, dest);
23 TEST(LlvmLibcMempcpyTest, ZeroCount) {
24 const char *src = "12345";
25 char dest[10];
26 void *result = __llvm_libc::mempcpy(dest, src, 0);
27 ASSERT_EQ(static_cast<char *>(result), dest + 0);