#include <gtest/gtest.h>
#include <cmath>
#include <fstream>
#include "../dataChannelTestUtility.h"
#include "../taskTests.h"
#include "../../../software/signal_processing_bsp/system.h"
#include "../../data/add_rand.h"
#include "../../data/fft.h"

int main( int argc, char ** argv ) {
    ::testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

TEST( test_task_fft, execute_only ) {
    dataChannelFill( DATA_CHANNEL_4_BASE, expected_add_rand );
    configureAndRunFft();
    dataChannelWriteToFile( DATA_CHANNEL_5_BASE, "data.py" );
}

TEST( test_task_fft, execute_and_check ) {
    dataChannelFill( DATA_CHANNEL_4_BASE, expected_add_rand );
    configureAndRunFft();
    dataChannelCheckAndWriteToFile( DATA_CHANNEL_5_BASE, expected_fft, "data.py" );
}

