blob: 0bff513676316cae50851bb62031a080bcb333d5 [file] [log] [blame]
// Copyright 2023 The PDFium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "core/fxcrt/fx_memcpy_wrappers.h"
#include "testing/gtest/include/gtest/gtest.h"
TEST(fxcrt, FXSYSmemset) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_memset(nullptr, 0, 0)));
}
TEST(fxcrt, FXSYSwmemset) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_wmemset(nullptr, 0, 0)));
}
TEST(fxcrt, FXSYSmemcpy) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_memcpy(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSwmemcpy) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_wmemcpy(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSmemmove) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_memmove(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSwmemmove) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_wmemmove(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSmemcmp) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(0, UNSAFE_BUFFERS(FXSYS_memcmp(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSwmemcmp) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(0, UNSAFE_BUFFERS(FXSYS_wmemcmp(nullptr, nullptr, 0)));
}
TEST(fxcrt, FXSYSmemchr) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_memchr(nullptr, 0, 0)));
}
TEST(fxcrt, FXSYSwmemchr) {
// Test passes if it does not trigger UBSAN warnings.
EXPECT_EQ(nullptr, UNSAFE_BUFFERS(FXSYS_wmemchr(nullptr, 0, 0)));
}