voice_audio_multi/tests/unittests/test_assert.h
Fabio c36510c21e
Some checks failed
Linux Build / Linux cpu (push) Has been cancelled
Linux Build / Linux cpu-clang (push) Has been cancelled
Linux Build / Linux vulkan (push) Has been cancelled
mac-build / macOS CPU (push) Has been cancelled
Nix Build / Nix (cpu) (push) Has been cancelled
Nix Build / Nix (vulkan) (push) Has been cancelled
windows-build / Windows CPU (push) Has been cancelled
Initial import: audio.cpp with Orange Pi documentation
2026-11-04 19:05:22 +01:00

35 lines
1,021 B
C++

#pragma once
#include <cmath>
#include <sstream>
#include <stdexcept>
#include <string>
namespace engine::test {
inline void require(bool condition, const std::string & message) {
if (!condition) {
throw std::runtime_error(message);
}
}
template <typename T, typename U>
void require_eq(const T & actual, const U & expected, const std::string & label) {
if (!(actual == expected)) {
std::ostringstream oss;
oss << label << " mismatch: expected=" << expected << " actual=" << actual;
throw std::runtime_error(oss.str());
}
}
inline void require_close(float actual, float expected, float tolerance, const std::string & label) {
const float diff = std::fabs(actual - expected);
if (diff > tolerance) {
std::ostringstream oss;
oss << label << " mismatch: expected=" << expected << " actual=" << actual
<< " diff=" << diff << " tolerance=" << tolerance;
throw std::runtime_error(oss.str());
}
}
} // namespace engine::test