X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Faudio_buffers_test.cc;h=0abd730809484a869c4c9b6d65b062fa459020f2;hb=dc5e11944a30a9d381dc0e67cf657c5f2cb65845;hp=25be3fe4bcfd0671849dc58f66e5fc4feaf83785;hpb=3828baf56467224f5d44049bf1e7a7ed11f43a05;p=dcpomatic.git diff --git a/test/audio_buffers_test.cc b/test/audio_buffers_test.cc index 25be3fe4b..0abd73080 100644 --- a/test/audio_buffers_test.cc +++ b/test/audio_buffers_test.cc @@ -19,7 +19,8 @@ */ /** @file test/audio_buffers_test.cc - * @brief Test AudioBuffers in various ways. + * @brief Test AudioBuffers class. + * @ingroup selfcontained */ #include @@ -78,7 +79,7 @@ BOOST_AUTO_TEST_CASE (audio_buffers_extend_test) random_fill (buffers); /* Extend */ - buffers.ensure_size (299); + buffers.set_frames (299); srand (1); random_check (buffers, 0, 150); @@ -228,7 +229,7 @@ BOOST_AUTO_TEST_CASE (audio_buffers_move) int const to = 666; int const frames = 444; - buffers.move (from, to, frames); + buffers.move (frames, from, to); /* Re-seed and check the un-moved parts */ srand (84); @@ -288,7 +289,7 @@ BOOST_AUTO_TEST_CASE (audio_buffers_accumulate_frames) AudioBuffers b (3, 256); random_fill (b); - a.accumulate_frames (&b, 91, 44, 129); + a.accumulate_frames (&b, 129, 91, 44); srand (38); for (int i = 0; i < 256; ++i) { @@ -302,3 +303,44 @@ BOOST_AUTO_TEST_CASE (audio_buffers_accumulate_frames) } } } + + +BOOST_AUTO_TEST_CASE (audio_buffers_data) +{ + AudioBuffers a (94, 512); + + for (int i = 0; i < 94; ++i) { + BOOST_CHECK_EQUAL (a.data()[i], a.data(i)); + } + + a.set_frames (2048); + + for (int i = 0; i < 94; ++i) { + BOOST_CHECK_EQUAL (a.data()[i], a.data(i)); + } +} + + +BOOST_AUTO_TEST_CASE (audio_buffers_trim_start) +{ + AudioBuffers a (13, 999); + + srand (55); + random_fill (a); + + a.trim_start (101); + + srand (55); + + /* Burn the first 101 numbers in the sequence */ + for (int i = 0; i < 101 * 13; ++i) { + random_float (); + } + + for (int i = 0; i < (999 - 101); ++i) { + for (int j = 0; j < 13; ++j) { + BOOST_CHECK_CLOSE (a.data(j)[i], random_float(), tolerance); + } + } +} +