DiFipp/tests/GenericFilterTests.cpp

28 wiersze
1.4 KiB
C++
Czysty Zwykły widok Historia

#define BOOST_TEST_MODULE GenericFilterTests
2018-12-17 05:48:44 +00:00
#include "fratio"
#include <boost/test/unit_test.hpp>
2018-12-14 11:30:44 +00:00
#include <vector>
2018-12-17 08:16:01 +00:00
BOOST_AUTO_TEST_CASE(FILTER_FAILURES)
{
2018-12-14 11:30:44 +00:00
auto dfd = fratio::DigitalFilterd(Eigen::VectorXd(), Eigen::VectorXd::Constant(2, 0));
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::A_COEFF_MISSING);
dfd = fratio::DigitalFilterd(Eigen::VectorXd::Constant(2, 1), Eigen::VectorXd());
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::B_COEFF_MISSING);
dfd = fratio::DigitalFilterd(Eigen::VectorXd(), Eigen::VectorXd());
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::ALL_COEFF_MISSING);
dfd = fratio::DigitalFilterd(Eigen::VectorXd::Constant(2, 0), Eigen::VectorXd::Constant(2, 0));
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::BAD_A_COEFF);
dfd = fratio::DigitalFilterd();
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::NONE);
dfd = fratio::DigitalFilterd(Eigen::VectorXd::Constant(2, 1), Eigen::VectorXd::Constant(2, 0));
BOOST_REQUIRE(dfd.status() == fratio::FilterStatus::READY);
2018-12-18 07:16:47 +00:00
auto mad = fratio::MovingAveraged(0);
BOOST_REQUIRE(mad.status() == fratio::FilterStatus::BAD_ORDER_SIZE);
auto bfd = fratio::Butterworthd(0, 10, 100);
BOOST_REQUIRE(bfd.status() == fratio::FilterStatus::BAD_ORDER_SIZE);
bfd = fratio::Butterworthd(5, 6, 5, 100);
2018-12-18 07:19:12 +00:00
BOOST_REQUIRE(bfd.status() == fratio::FilterStatus::BAD_BAND_FREQUENCY);
}