summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/evoral/test/sequence.cpp89
-rw-r--r--libs/evoral/test/sequence.hpp48
-rw-r--r--libs/evoral/test/testrunner.cpp28
-rw-r--r--libs/evoral/wscript9
4 files changed, 93 insertions, 81 deletions
diff --git a/libs/evoral/test/sequence.cpp b/libs/evoral/test/sequence.cpp
index 499da8f10d..bdeb2aa477 100644
--- a/libs/evoral/test/sequence.cpp
+++ b/libs/evoral/test/sequence.cpp
@@ -1,84 +1,17 @@
-#include <evoral/Sequence.hpp>
-#include <evoral/TypeMap.hpp>
+#include "sequence.hpp"
+#include <cassert>
-#include <cppunit/TestFixture.h>
-#include <cppunit/extensions/HelperMacros.h>
+CPPUNIT_TEST_SUITE_REGISTRATION( SequenceTest );
-#include <cppunit/CompilerOutputter.h>
-#include <cppunit/extensions/TestFactoryRegistry.h>
-#include <cppunit/TestResult.h>
-#include <cppunit/TestResultCollector.h>
-#include <cppunit/TestRunner.h>
-#include <cppunit/BriefTestProgressListener.h>
-
-using namespace Evoral;
-
-class DummyTypeMap : public TypeMap {
-public:
- virtual ~DummyTypeMap() {}
-
- virtual bool type_is_midi(uint32_t type) const {return true;}
-
- virtual uint8_t parameter_midi_type(const Parameter& param) const {return 0;}
-
- virtual uint32_t midi_event_type(uint8_t status) const {return 0;}
-
- virtual bool is_integer(const Evoral::Parameter& param) const {return true;}
-
- virtual Parameter new_parameter(uint32_t type, uint8_t channel, uint32_t id) const {return Parameter(type, channel, id);}
-
- virtual std::string to_symbol(const Parameter& param) const {return "foo";}
-};
-
-template<typename Time>
-class MySequence : public Sequence<Time> {
-public:
- MySequence(DummyTypeMap&map, int size) : Sequence<Time>(map, size) {}
-
- boost::shared_ptr<Control> control_factory(const Parameter& param) {return boost::shared_ptr<Control>();}
-};
-
-class SequenceTest : public CPPUNIT_NS::TestFixture
-{
- CPPUNIT_TEST_SUITE (SequenceTest);
- CPPUNIT_TEST (createTest);
- CPPUNIT_TEST_SUITE_END ();
-
- public:
- void setUp (void) {
- Glib::thread_init();
- }
-
- void tearDown (void);
-
- protected:
- void createTest (void) {
- DummyTypeMap type_map;
- MySequence<double> s(type_map, 100);
- }
-
- private:
-};
-
-
-int
-main()
+void
+SequenceTest::createTest (void)
{
+ DummyTypeMap type_map;
+ MySequence<double> seq(type_map, 100);
- CPPUNIT_NS::TestResult testresult;
-
- CPPUNIT_NS::TestResultCollector collectedresults;
- testresult.addListener (&collectedresults);
-
- CPPUNIT_NS::BriefTestProgressListener progress;
- testresult.addListener (&progress);
-
- CPPUNIT_NS::TestRunner testrunner;
- testrunner.addTest (CPPUNIT_NS::TestFactoryRegistry::getRegistry ().makeTest ());
- testrunner.run (testresult);
+ CPPUNIT_ASSERT_EQUAL(size_t(0), seq.sysexes().size());
+ CPPUNIT_ASSERT_EQUAL(size_t(100), seq.notes().size());
+ CPPUNIT_ASSERT(seq.notes().begin() != seq.notes().end());
+}
- CPPUNIT_NS::CompilerOutputter compileroutputter (&collectedresults, std::cerr);
- compileroutputter.write ();
- return collectedresults.wasSuccessful () ? 0 : 1;
-}
diff --git a/libs/evoral/test/sequence.hpp b/libs/evoral/test/sequence.hpp
new file mode 100644
index 0000000000..63b99c6a0b
--- /dev/null
+++ b/libs/evoral/test/sequence.hpp
@@ -0,0 +1,48 @@
+#include <cppunit/TestFixture.h>
+#include <cppunit/extensions/HelperMacros.h>
+
+#include <evoral/Sequence.hpp>
+#include <evoral/TypeMap.hpp>
+
+
+using namespace Evoral;
+
+class DummyTypeMap : public TypeMap {
+public:
+ virtual ~DummyTypeMap() {}
+
+ virtual bool type_is_midi(uint32_t type) const {return true;}
+
+ virtual uint8_t parameter_midi_type(const Parameter& param) const {return 0;}
+
+ virtual uint32_t midi_event_type(uint8_t status) const {return 0;}
+
+ virtual bool is_integer(const Evoral::Parameter& param) const {return true;}
+
+ virtual Parameter new_parameter(uint32_t type, uint8_t channel, uint32_t id) const {return Parameter(type, channel, id);}
+
+ virtual std::string to_symbol(const Parameter& param) const {return "foo";}
+};
+
+template<typename Time>
+class MySequence : public Sequence<Time> {
+public:
+ MySequence(DummyTypeMap&map, int size) : Sequence<Time>(map, size) {}
+
+ boost::shared_ptr<Control> control_factory(const Parameter& param) {return boost::shared_ptr<Control>();}
+};
+
+class SequenceTest : public CppUnit::TestFixture
+{
+ CPPUNIT_TEST_SUITE (SequenceTest);
+ CPPUNIT_TEST (createTest);
+ CPPUNIT_TEST_SUITE_END ();
+
+ public:
+ void setUp (void) { Glib::thread_init(); }
+ void tearDown (void) {}
+
+ void createTest (void);
+
+ private:
+};
diff --git a/libs/evoral/test/testrunner.cpp b/libs/evoral/test/testrunner.cpp
new file mode 100644
index 0000000000..81e343ec49
--- /dev/null
+++ b/libs/evoral/test/testrunner.cpp
@@ -0,0 +1,28 @@
+#include <cppunit/CompilerOutputter.h>
+#include <cppunit/extensions/TestFactoryRegistry.h>
+#include <cppunit/TestResult.h>
+#include <cppunit/TestResultCollector.h>
+#include <cppunit/TestRunner.h>
+#include <cppunit/BriefTestProgressListener.h>
+
+
+int
+main()
+{
+ CppUnit::TestResult testresult;
+
+ CppUnit::TestResultCollector collectedresults;
+ testresult.addListener (&collectedresults);
+
+ CppUnit::BriefTestProgressListener progress;
+ testresult.addListener (&progress);
+
+ CppUnit::TestRunner testrunner;
+ testrunner.addTest (CppUnit::TestFactoryRegistry::getRegistry ().makeTest ());
+ testrunner.run (testresult);
+
+ CppUnit::CompilerOutputter compileroutputter (&collectedresults, std::cerr);
+ compileroutputter.write ();
+
+ return collectedresults.wasSuccessful () ? 0 : 1;
+}
diff --git a/libs/evoral/wscript b/libs/evoral/wscript
index 508c771c76..1d94e59e68 100644
--- a/libs/evoral/wscript
+++ b/libs/evoral/wscript
@@ -28,7 +28,7 @@ def configure(conf):
autowaf.check_tool(conf, 'compiler_cxx')
autowaf.check_pkg(conf, 'glibmm-2.4', uselib_store='GLIBMM', atleast_version='2.14.0', mandatory=True)
autowaf.check_pkg(conf, 'gthread-2.0', uselib_store='GTHREAD', atleast_version='2.14.0', mandatory=True)
- autowaf.check_pkg(conf, 'cppunit', uselib_store='CPPUNIT', atleast_version='1.12.0', mandatory=True)
+ autowaf.check_pkg(conf, 'cppunit', uselib_store='CPPUNIT', atleast_version='1.12.0', mandatory=False)
def build(bld):
# Headers
@@ -62,11 +62,14 @@ def build(bld):
# Unit tests
obj = bld.new_task_gen('cxx', 'program')
- obj.source = 'test/sequence.cpp'
+ obj.source = '''
+ test/sequence.cpp
+ test/testrunner.cpp
+ '''
obj.includes = ['.', './src']
obj.uselib_local = 'libevoral'
obj.uselib = 'CPPUNIT'
- obj.target = 'sequence'
+ obj.target = 'run-tests'
obj.install_path = ''
def shutdown():