minimalistic Evoral::Curve Unit Test.
authorRobin Gareus <robin@gareus.org>
Mon, 19 Jan 2015 21:14:58 +0000 (22:14 +0100)
committerRobin Gareus <robin@gareus.org>
Mon, 19 Jan 2015 21:15:28 +0000 (22:15 +0100)
libs/evoral/test/CurveTest.cpp [new file with mode: 0644]
libs/evoral/test/CurveTest.hpp [new file with mode: 0644]
libs/evoral/wscript

diff --git a/libs/evoral/test/CurveTest.cpp b/libs/evoral/test/CurveTest.cpp
new file mode 100644 (file)
index 0000000..8e6c801
--- /dev/null
@@ -0,0 +1,32 @@
+#include "CurveTest.hpp"
+#include "evoral/ControlList.hpp"
+#include "evoral/Curve.hpp"
+#include <stdlib.h>
+
+CPPUNIT_TEST_SUITE_REGISTRATION (CurveTest);
+
+using namespace Evoral;
+
+void
+CurveTest::interpolateTest1 ()
+{
+       float vec[1024];
+
+       Parameter param (Parameter(0));
+       const Evoral::ParameterDescriptor desc;
+       ControlList *cl (new ControlList(param, desc));
+
+       cl->create_curve();
+
+       cl->fast_simple_add(0.0   , 0.0);
+       cl->fast_simple_add(8191.0 , 8191.0);
+
+       cl->curve().get_vector(1024, 2047, vec, 1024);
+
+       for (int i = 0; i < 1024; ++i) {
+               CPPUNIT_ASSERT_EQUAL (1024.f + i, vec[i]);
+       }
+
+       cl->destroy_curve();
+       delete cl;
+}
diff --git a/libs/evoral/test/CurveTest.hpp b/libs/evoral/test/CurveTest.hpp
new file mode 100644 (file)
index 0000000..d634886
--- /dev/null
@@ -0,0 +1,14 @@
+#include <cppunit/TestFixture.h>
+#include <cppunit/extensions/HelperMacros.h>
+
+class CurveTest : public CppUnit::TestFixture
+{
+       CPPUNIT_TEST_SUITE (CurveTest);
+       CPPUNIT_TEST (interpolateTest1);
+       CPPUNIT_TEST_SUITE_END ();
+
+public:
+       void interpolateTest1 ();
+};
+
+       
index 4b798f504d5df931ef91da9f50389b6dce41fd80..e6f1a8f8b8cd81b1c9f1d54c2af3ca78314cee68 100644 (file)
@@ -137,6 +137,7 @@ def build(bld):
                 test/SequenceTest.cpp
                 test/SMFTest.cpp
                 test/RangeTest.cpp
+                test/CurveTest.cpp
                 test/testrunner.cpp
         '''
         obj.includes     = ['.', './src']