tests: add new test to check that tempo map reset changes beat time correctly
This commit is contained in:
parent
f5887b978d
commit
a84d3e04c4
@ -11,11 +11,28 @@ using namespace Temporal;
|
|||||||
void
|
void
|
||||||
TempoMapTest::createTest()
|
TempoMapTest::createTest()
|
||||||
{
|
{
|
||||||
|
CPPUNIT_ASSERT (TempoMap::use() != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
TempoMapTest::addTest()
|
TempoMapTest::addTest()
|
||||||
{
|
{
|
||||||
|
TempoMap::WritableSharedPtr tmap (TempoMap::write_copy());
|
||||||
|
TempoPoint& tp = tmap->set_tempo (Tempo (180, 4), BBT_Time (6, 1, 0));
|
||||||
|
tmap->set_meter (Meter (6, 8), BBT_Time (3, 1, 0));
|
||||||
|
|
||||||
|
/* tp is at 6|1|0 which is 3|0|0 after the 6/8 meter at ((3-1) * 4 =) 8
|
||||||
|
* quarter notes), so 3 bars of 6
|
||||||
|
* 8th notes, or 18 8 notes, or 9 4th notes. So its quarter time should
|
||||||
|
* be 12 + 9 = 17
|
||||||
|
*/
|
||||||
|
|
||||||
|
std::cout << "\n\n\n\***************** tp = " << tp.beats() << std::endl;
|
||||||
|
|
||||||
|
CPPUNIT_ASSERT (tp.beats() == Beats (17,0));
|
||||||
|
|
||||||
|
|
||||||
|
tmap->abort_update ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
Loading…
Reference in New Issue
Block a user