8e6c8011f5a01ef41290ac01152109957e10dc02
[ardour.git] / libs / evoral / test / CurveTest.cpp
1 #include "CurveTest.hpp"
2 #include "evoral/ControlList.hpp"
3 #include "evoral/Curve.hpp"
4 #include <stdlib.h>
5
6 CPPUNIT_TEST_SUITE_REGISTRATION (CurveTest);
7
8 using namespace Evoral;
9
10 void
11 CurveTest::interpolateTest1 ()
12 {
13         float vec[1024];
14
15         Parameter param (Parameter(0));
16         const Evoral::ParameterDescriptor desc;
17         ControlList *cl (new ControlList(param, desc));
18
19         cl->create_curve();
20
21         cl->fast_simple_add(0.0   , 0.0);
22         cl->fast_simple_add(8191.0 , 8191.0);
23
24         cl->curve().get_vector(1024, 2047, vec, 1024);
25
26         for (int i = 0; i < 1024; ++i) {
27                 CPPUNIT_ASSERT_EQUAL (1024.f + i, vec[i]);
28         }
29
30         cl->destroy_curve();
31         delete cl;
32 }