#include "../src/generators.h" #include "gtest/gtest.h" TEST(Generator, SineWave) { sample_table_t t = gen_sin(); // Starts at 0 EXPECT_EQ(t[0], 0); } TEST(Generator, SquareWave) { sample_table_t t = gen_squ(); // Starts at 1 EXPECT_EQ(t[0], 1); // Ends at -1 EXPECT_EQ(t[DEFAULT_N_SAMPLES - 1], -1); } TEST(Generator, SawWave) { sample_table_t t = gen_saw(); // Starts at -1 EXPECT_EQ(t[0], -1); } TEST(Generator, TriangleWave) { sample_table_t t = gen_tri(); // Starts at -1 EXPECT_EQ(t[0], -1); } TEST(Generator, InverseSawWave) { sample_table_t t = gen_isaw(); // Starts at 1 EXPECT_EQ(t[0], 1); } TEST(Generator, NoiseWave) { sample_table_t t = gen_noise(); // Always start and end at 0 EXPECT_EQ(t[0], 0); EXPECT_EQ(t[DEFAULT_N_SAMPLES - 1], 0); // Check second value, probably not equal to 0 EXPECT_NE(t[1], 0); }