@@ -210,17 +210,19 @@ TEST_F(TestVst3xWrapper, TestTimeInfo)
210210 _host_control._transport .set_playing_mode (PlayingMode::PLAYING, false );
211211 _host_control._transport .set_tempo (120 , false );
212212 _host_control._transport .set_time_signature ({3 , 4 }, false );
213- _host_control._transport .set_time (std::chrono::seconds (1 ), static_cast <int64_t >(TEST_SAMPLE_RATE));
213+ _host_control._transport .set_time (std::chrono::seconds (2 ), static_cast <int64_t >(TEST_SAMPLE_RATE) * 2 );
214214
215215 _module_under_test->_fill_processing_context ();
216216 auto context = _module_under_test->_process_data .processContext ;
217-
217+ /* For these numbers to match exactly, we need to choose a time interval which
218+ * is an integer multiple of AUDIO_CHUNK_SIZE, hence 2 seconds at 48000, which
219+ * is good up to AUDIO_CHUNK_SIZE = 256 */
218220 EXPECT_FLOAT_EQ (TEST_SAMPLE_RATE, context->sampleRate );
219- EXPECT_EQ (static_cast <int64_t >(TEST_SAMPLE_RATE), context->projectTimeSamples );
220- EXPECT_EQ (1 '000'000'000 , context->systemTime );
221- EXPECT_EQ (static_cast <int64_t >(TEST_SAMPLE_RATE), context->continousTimeSamples );
222- EXPECT_FLOAT_EQ (2 .0f , context->projectTimeMusic );
223- EXPECT_FLOAT_EQ (0 .0f , context->barPositionMusic );
221+ EXPECT_EQ (static_cast <int64_t >(TEST_SAMPLE_RATE) * 2 , context->projectTimeSamples );
222+ EXPECT_EQ (2 '000'000'000 , context->systemTime );
223+ EXPECT_EQ (static_cast <int64_t >(TEST_SAMPLE_RATE) * 2 , context->continousTimeSamples );
224+ EXPECT_FLOAT_EQ (4 .0f , context->projectTimeMusic );
225+ EXPECT_FLOAT_EQ (3 .0f , context->barPositionMusic );
224226 EXPECT_FLOAT_EQ (120 .0f , context->tempo );
225227 EXPECT_EQ (3 , context->timeSigNumerator );
226228 EXPECT_EQ (4 , context->timeSigDenominator );
0 commit comments