summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/domloadertest.cc10
-rw-r--r--test/drumkit_creator.cc15
2 files changed, 13 insertions, 12 deletions
diff --git a/test/domloadertest.cc b/test/domloadertest.cc
index 69b9821..55d49a7 100644
--- a/test/domloadertest.cc
+++ b/test/domloadertest.cc
@@ -34,6 +34,7 @@
#include <random.h>
#include "scopedfile.h"
+#include "path.h"
class DOMLoaderTest
: public DGUnit
@@ -99,13 +100,13 @@ public:
" <channel name=\"SnareBottom\"/>\n" \
" </channels>\n" \
" <instruments>\n" \
- " <instrument name=\"Snare1\" file=\"") + scoped_instrument_file1.filename() + std::string("\">\n" \
+ " <instrument name=\"Snare1\" file=\"") + getFile(scoped_instrument_file1.filename()) + std::string("\">\n" \
" <channelmap in=\"AmbLeft\" out=\"AmbLeft\" main=\"true\"/>\n" \
" <channelmap in=\"AmbRight\" out=\"AmbRight\" main=\"true\"/>\n" \
" <channelmap in=\"SnareTop\" out=\"SnareTop\"/>\n" \
" <channelmap in=\"SnareBottom\" out=\"SnareBottom\"/>\n" \
" </instrument>\n" \
- " <instrument name=\"Snare2\" file=\"") + scoped_instrument_file2.filename() + std::string("\">\n" \
+ " <instrument name=\"Snare2\" file=\"") + getFile(scoped_instrument_file2.filename()) + std::string("\">\n" \
" <channelmap in=\"AmbLeft2\" out=\"AmbLeft\" main=\"true\"/>\n" \
" <channelmap in=\"AmbRight2\" out=\"AmbRight\" main=\"true\"/>\n" \
" <channelmap in=\"SnareTop2\" out=\"SnareTop\"/>\n" \
@@ -119,14 +120,15 @@ public:
DrumkitDOM drumkitdom;
std::vector<InstrumentDOM> instrumentdoms;
DGUNIT_ASSERT(parseDrumkitFile(scoped_file.filename(), drumkitdom));
+ auto basepath = getPath(scoped_file.filename());
for(const auto& ref: drumkitdom.instruments)
{
instrumentdoms.emplace_back();
- DGUNIT_ASSERT(parseInstrumentFile(ref.file, instrumentdoms.back()));
+ DGUNIT_ASSERT(parseInstrumentFile(basepath + "/" + ref.file, instrumentdoms.back()));
}
DOMLoader domloader(settings, random);
- DGUNIT_ASSERT(domloader.loadDom(drumkitdom, instrumentdoms, drumkit));
+ DGUNIT_ASSERT(domloader.loadDom(basepath, drumkitdom, instrumentdoms, drumkit));
//
// Drumkit:
diff --git a/test/drumkit_creator.cc b/test/drumkit_creator.cc
index 7a0291c..d92f876 100644
--- a/test/drumkit_creator.cc
+++ b/test/drumkit_creator.cc
@@ -44,6 +44,7 @@
DrumkitCreator::~DrumkitCreator()
{
+ return;
for (const auto& file: created_files)
{
auto error = unlink(file.c_str());
@@ -304,18 +305,16 @@ void DrumkitCreator::createInstrument(const InstrumentData& data, std::size_t nu
const std::string& dir)
{
std::string prefix = "<?xml version='1.0' encoding='UTF-8'?>\n"
- "<instrument name=\"" + data.name + "\" version=\"2.0\">\n";
+ "<instrument name=\"" + data.name + "\" version=\"2.0\">\n"
+ " <samples>\n";
// FIXME sampleref
- std::string postfix = "<velocities>\n"
- "<velocity lower=\"0\" upper=\"1\">\n"
- "<sampleref probability=\"1\" name=\"stroke1\"/>\n"
- "</velocity>\n"
- "</velocities>\n"
- "</instrument>\n";
+ std::string postfix = " </samples>\n</instrument>\n";
std::string samples;
+ float power = 1.0f;
for (const auto& sample: data.sample_data) {
- samples += "<sample name=\"" + sample.name + "\">\n";
+ samples += "<sample name=\"" + sample.name + "\" power=\"" + std::to_string(power) + "\">\n";
+ power += 0.1f;
for (std::size_t i = 0; i < sample.audiofiles.size(); ++i)
{