summaryrefslogtreecommitdiff
path: root/libs/ardour/test/test_needing_playlist_and_regions.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/test/test_needing_playlist_and_regions.cc')
-rw-r--r--libs/ardour/test/test_needing_playlist_and_regions.cc20
1 files changed, 19 insertions, 1 deletions
diff --git a/libs/ardour/test/test_needing_playlist_and_regions.cc b/libs/ardour/test/test_needing_playlist_and_regions.cc
index fea08cc4d9..4e0e42c67b 100644
--- a/libs/ardour/test/test_needing_playlist_and_regions.cc
+++ b/libs/ardour/test/test_needing_playlist_and_regions.cc
@@ -3,7 +3,9 @@
#include "ardour/source_factory.h"
#include "ardour/region.h"
#include "ardour/region_factory.h"
+#include "ardour/sndfilesource.h"
#include "test_needing_playlist_and_regions.h"
+#include "test_globals.h"
using namespace std;
using namespace PBD;
@@ -14,9 +16,25 @@ TestNeedingPlaylistAndRegions::setUp ()
{
TestNeedingSession::setUp ();
+ /* This is important, otherwise createWritable will mark the source immutable (hence unwritable) */
+ unlink ("libs/ardour/test/test.wav");
string const test_wav_path = "libs/ardour/test/test.wav";
_playlist = PlaylistFactory::create (DataType::AUDIO, *_session, "test");
- _source = SourceFactory::createWritable (DataType::AUDIO, *_session, test_wav_path, "", false, 44100);
+ _source = SourceFactory::createWritable (DataType::AUDIO, *_session, test_wav_path, "", false, Fs);
+
+ /* Write a staircase to the source */
+
+ boost::shared_ptr<SndFileSource> s = boost::dynamic_pointer_cast<SndFileSource> (_source);
+ assert (s);
+
+ int const signal_length = 4096;
+
+ Sample staircase[signal_length];
+ for (int i = 0; i < signal_length; ++i) {
+ staircase[i] = i;
+ }
+
+ s->write (staircase, signal_length);
PropertyList plist;
plist.add (Properties::start, 0);