summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2012-05-12 19:34:02 +0000
committerCarl Hetherington <carl@carlh.net>2012-05-12 19:34:02 +0000
commit7d09c5627b496ed5861de15fdcb23dbc42410082 (patch)
tree36ffb9f92ca6386cf50e455961af9be6ce2080a1 /libs
parent5f0633594878836fd29c706cc72ac9cec3547ca7 (diff)
Add test for strange boost-related crash.
git-svn-id: svn://localhost/ardour2/branches/3.0@12261 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rwxr-xr-xlibs/ardour/run-tests.sh1
-rw-r--r--libs/ardour/test/control_surfaces_test.cc23
-rw-r--r--libs/ardour/test/control_surfaces_test.h11
-rw-r--r--libs/ardour/test/test_needing_session.cc7
-rw-r--r--libs/ardour/wscript1
5 files changed, 42 insertions, 1 deletions
diff --git a/libs/ardour/run-tests.sh b/libs/ardour/run-tests.sh
index 1af623c3f2..1097804994 100755
--- a/libs/ardour/run-tests.sh
+++ b/libs/ardour/run-tests.sh
@@ -16,6 +16,7 @@ libs='libs'
export LD_LIBRARY_PATH=$libs/audiographer:$libs/vamp-sdk:$libs/surfaces:$libs/surfaces/control_protocol:$libs/ardour:$libs/midi++2:$libs/pbd:$libs/rubberband:$libs/soundtouch:$libs/gtkmm2ext:$libs/appleutility:$libs/taglib:$libs/evoral:$libs/evoral/src/libsmf:$libs/timecode:/usr/local/lib:/usr/local/lib64:$LD_LIBRARY_PATH
export ARDOUR_PANNER_PATH=$libs/panners/2in2out:$libs/panners/1in2out:$libs/panners/vbap
+export ARDOUR_SURFACES_PATH=$libs/surfaces/osc:$libs/surfaces/generic_midi:$libs/surfaces/tranzport:$libs/surfaces/powermate:$libs/surfaces/mackie
if [ "$1" == "--debug" ]; then
gdb ./libs/ardour/run-tests
diff --git a/libs/ardour/test/control_surfaces_test.cc b/libs/ardour/test/control_surfaces_test.cc
new file mode 100644
index 0000000000..82127a2524
--- /dev/null
+++ b/libs/ardour/test/control_surfaces_test.cc
@@ -0,0 +1,23 @@
+#include "control_surfaces_test.h"
+#include "ardour/control_protocol_manager.h"
+#include "ardour/session.h"
+
+CPPUNIT_TEST_SUITE_REGISTRATION (ControlSurfacesTest);
+
+using namespace std;
+using namespace ARDOUR;
+
+void
+ControlSurfacesTest::instantiateAndTeardownTest ()
+{
+ cout << "HELLO!\n";
+ _session->new_audio_track (1, 2, Normal, 0, 1, "Test");
+
+ ControlProtocolManager& m = ControlProtocolManager::instance ();
+ cout << "CST: Test " << m.control_protocol_info.size() << "\n";
+ for (list<ControlProtocolInfo*>::iterator i = m.control_protocol_info.begin(); i != m.control_protocol_info.end(); ++i) {
+ cout << "CST: Test " << (*i)->name << "\n";
+ m.instantiate (**i);
+ m.teardown (**i);
+ }
+}
diff --git a/libs/ardour/test/control_surfaces_test.h b/libs/ardour/test/control_surfaces_test.h
new file mode 100644
index 0000000000..97662c6ea3
--- /dev/null
+++ b/libs/ardour/test/control_surfaces_test.h
@@ -0,0 +1,11 @@
+#include "test_needing_session.h"
+
+class ControlSurfacesTest : public TestNeedingSession
+{
+ CPPUNIT_TEST_SUITE (ControlSurfacesTest);
+ CPPUNIT_TEST (instantiateAndTeardownTest);
+ CPPUNIT_TEST_SUITE_END ();
+
+public:
+ void instantiateAndTeardownTest ();
+};
diff --git a/libs/ardour/test/test_needing_session.cc b/libs/ardour/test/test_needing_session.cc
index ea63978251..625d5735b2 100644
--- a/libs/ardour/test/test_needing_session.cc
+++ b/libs/ardour/test/test_needing_session.cc
@@ -6,6 +6,8 @@
#include "ardour/audioengine.h"
#include "test_needing_session.h"
+extern void setup_libpbd_enums ();
+
using namespace std;
using namespace ARDOUR;
using namespace PBD;
@@ -57,13 +59,16 @@ TestNeedingSession::setUp ()
init (false, true);
SessionEvent::create_per_thread_pool ("test", 512);
+ setup_libpbd_enums ();
+
test_receiver.listen_to (error);
test_receiver.listen_to (info);
test_receiver.listen_to (fatal);
test_receiver.listen_to (warning);
AudioEngine* engine = new AudioEngine ("test", "");
- MIDI::Manager::create (engine->jack ());
+ init_post_engine ();
+
CPPUNIT_ASSERT (engine->start () == 0);
_session = new Session (*engine, test_session_path, "test_session");
diff --git a/libs/ardour/wscript b/libs/ardour/wscript
index bf32599630..df46d8cc86 100644
--- a/libs/ardour/wscript
+++ b/libs/ardour/wscript
@@ -435,6 +435,7 @@ def build(bld):
test/framepos_minus_beats_test.cc
test/playlist_layering_test.cc
test/playlist_read_test.cc
+ test/control_surfaces_test.cc
test/testrunner.cc
'''.split()