File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -122,7 +122,7 @@ void Transport::postProcess (int nframes)
122122 if (ts.beatDivisor () != nextBeatDivisor.get ())
123123 {
124124 ts.setBeatType ((unsigned short ) nextBeatDivisor.get ());
125- ts.setBeatDivisor (1 << ts. beatType ());
125+ ts.setBeatDivisor (( unsigned short ) nextBeatDivisor. get ());
126126 monitor->beatDivisor .set (nextBeatDivisor.get ());
127127 updateTimeScale = true ;
128128 }
Original file line number Diff line number Diff line change @@ -49,6 +49,7 @@ add_test(NAME "ScriptManagerTest" COMMAND test_element --run_test=ScriptManagerT
4949add_test (NAME "ScriptPlayground" COMMAND test_element --run_test=ScriptPlayground )
5050add_test (NAME "SessionChangedTest" COMMAND test_element --run_test=SessionChangedTest )
5151add_test (NAME "ShuttleTests" COMMAND test_element --run_test=ShuttleTests )
52+ add_test (NAME "TransportTests" COMMAND test_element --run_test=TransportTests )
5253add_test (NAME "ToggleGridTest" COMMAND test_element --run_test=ToggleGridTest )
5354add_test (NAME "UpdateTests" COMMAND test_element --run_test=UpdateTests )
5455add_test (NAME "VelocityCurveTest" COMMAND test_element --run_test=VelocityCurveTest )
Original file line number Diff line number Diff line change 1+ // SPDX-FileCopyrightText: Copyright (C) Kushview, LLC.
2+ // SPDX-License-Identifier: GPL-3.0-or-later
3+
4+ #include < boost/test/unit_test.hpp>
5+ #include < element/transport.hpp>
6+ #include " tempo.hpp"
7+
8+ using element::Transport;
9+
10+ BOOST_AUTO_TEST_SUITE (TransportTests)
11+
12+ BOOST_AUTO_TEST_CASE (publishesCorrectTimeSignatureDenominator)
13+ {
14+ Transport transport;
15+
16+ auto pos = transport.getPosition ();
17+ BOOST_REQUIRE (pos.hasValue ());
18+ BOOST_REQUIRE (pos->getTimeSignature ().hasValue ());
19+ BOOST_REQUIRE_EQUAL (pos->getTimeSignature ()->numerator , 4 );
20+ BOOST_REQUIRE_EQUAL (pos->getTimeSignature ()->denominator , 4 );
21+
22+ transport.requestMeter (7 , element::BeatType::EighthNote);
23+ transport.postProcess (0 );
24+
25+ pos = transport.getPosition ();
26+ BOOST_REQUIRE (pos.hasValue ());
27+ BOOST_REQUIRE (pos->getTimeSignature ().hasValue ());
28+ BOOST_REQUIRE_EQUAL (pos->getTimeSignature ()->numerator , 7 );
29+ BOOST_REQUIRE_EQUAL (pos->getTimeSignature ()->denominator , 8 );
30+ }
31+
32+ BOOST_AUTO_TEST_SUITE_END ()
You can’t perform that action at this time.
0 commit comments