* evoral: First productive test environment
[ardour.git] / libs / evoral / test / sequence.hpp
1 #include <cppunit/TestFixture.h>
2 #include <cppunit/extensions/HelperMacros.h>
3
4 #include <evoral/Sequence.hpp>
5 #include <evoral/TypeMap.hpp>
6
7
8 using namespace Evoral;
9
10 class DummyTypeMap : public TypeMap {
11 public:
12         virtual ~DummyTypeMap() {}
13
14         virtual bool type_is_midi(uint32_t type) const {return true;}
15
16         virtual uint8_t parameter_midi_type(const Parameter& param) const {return 0;}
17         
18         virtual uint32_t midi_event_type(uint8_t status) const {return 0;}
19         
20         virtual bool is_integer(const Evoral::Parameter& param) const {return true;}
21
22         virtual Parameter new_parameter(uint32_t type, uint8_t channel, uint32_t id) const {return Parameter(type, channel, id);}
23
24         virtual std::string to_symbol(const Parameter& param) const {return "foo";}
25 };
26
27 template<typename Time>
28 class MySequence : public Sequence<Time> {
29 public:
30         MySequence(DummyTypeMap&map, int size) : Sequence<Time>(map, size) {}
31
32         boost::shared_ptr<Control> control_factory(const Parameter& param) {return boost::shared_ptr<Control>();}
33 };
34
35 class SequenceTest : public CppUnit::TestFixture
36 {
37     CPPUNIT_TEST_SUITE (SequenceTest);
38     CPPUNIT_TEST (createTest);
39     CPPUNIT_TEST_SUITE_END ();
40
41     public:
42         void setUp (void) { Glib::thread_init(); }
43         void tearDown (void) {}
44
45         void createTest (void);
46
47     private:
48 };