Newer
Older
// SPDX-License-Identifier: LGPL-3.0-or-later
// Copyright © 2021 Florian Schmaus
#include <gtest/gtest.h>
#include <array>
#include <cstddef>
#include <cstdint>
#include <memory>
#include "lib/template_util.hpp"
namespace tu = emper::lib::template_util;
template <typename T>
void test_getSize(T& t, size_t expected) {
size_t actual = tu::getSize(t);
ASSERT_EQ(actual, expected);
}
// NOLINTNEXTLINE(modernize-use-trailing-return-type)
TEST(getSize, simple_uint8_t) {
const size_t bytes = 42;
std::array<uint8_t, bytes> array;
test_getSize(array, bytes);
}
// NOLINTNEXTLINE(modernize-use-trailing-return-type)
TEST(getSize, simple_uint32_t) {
const size_t elements = 42;
std::array<uint32_t, elements> array;
test_getSize(array, elements * 4);
}