Initial NBData, added FFT
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include <NBData/ComplexNumbers.hpp>
|
||||
|
||||
template<typename A, typename B>
|
||||
void COMPLEX_EQ(const nb::Complex<A>& a, const nb::Complex<B>& b) {
|
||||
ASSERT_EQ(a.r, b.r);
|
||||
ASSERT_EQ(a.i, b.i);
|
||||
}
|
||||
|
||||
template<typename A, typename B>
|
||||
void COMPLEX_ALMOST_EQ(const nb::Complex<A>& a, const nb::Complex<B>& b) {
|
||||
ASSERT_FLOAT_EQ(a.r, b.r);
|
||||
ASSERT_FLOAT_EQ(a.i, b.i);
|
||||
}
|
||||
|
||||
TEST(ComplexNumberTests, TestConstruction) {
|
||||
COMPLEX_ALMOST_EQ(nb::Complex(), nb::Complex(0,0));
|
||||
COMPLEX_ALMOST_EQ(nb::Complex(5.0), nb::Complex(5, 0));
|
||||
COMPLEX_ALMOST_EQ(1.5_j, nb::Complex(0.0, 1.5));
|
||||
}
|
||||
|
||||
TEST(ComplexNumberTests, TestAdd) {
|
||||
auto x = nb::Complex(1.0) - nb::Complex(2.0, 1.0);
|
||||
ASSERT_FLOAT_EQ(x.r, -1);
|
||||
ASSERT_FLOAT_EQ(x.i, -1);
|
||||
}
|
||||
Reference in New Issue
Block a user