summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-08-15 15:46:19 +0200
committerCarl Hetherington <cth@carlh.net>2023-08-15 18:27:05 +0200
commita7ed400c81c65a11623418d08cd5c953826754bd (patch)
treea95e9a2f648e80ede281e33b8f5daf1856063593 /test
parent112911198b74cde35bcec6c1a1a571a84c950851 (diff)
Add Audiobuffers::set_channels().
Diffstat (limited to 'test')
-rw-r--r--test/audio_buffers_test.cc41
1 files changed, 41 insertions, 0 deletions
diff --git a/test/audio_buffers_test.cc b/test/audio_buffers_test.cc
index 0abd73080..76785d8ec 100644
--- a/test/audio_buffers_test.cc
+++ b/test/audio_buffers_test.cc
@@ -344,3 +344,44 @@ BOOST_AUTO_TEST_CASE (audio_buffers_trim_start)
}
}
+
+BOOST_AUTO_TEST_CASE(audio_buffers_set_channels_lower)
+{
+ AudioBuffers buffers(9, 9933);
+ srand(4);
+ random_fill(buffers);
+
+ buffers.set_channels(4);
+ BOOST_REQUIRE_EQUAL(buffers.channels(), 4U);
+
+ srand(4);
+ for (int i = 0; i < 9933; ++i) {
+ for (int c = 0; c < 4; ++c) {
+ BOOST_CHECK_EQUAL(buffers.data(c)[i], random_float());
+ }
+ for (int c = 4; c < 9; ++c) {
+ random_float();
+ }
+ }
+}
+
+
+BOOST_AUTO_TEST_CASE(audio_buffers_set_channels_higher)
+{
+ AudioBuffers buffers(9, 9933);
+ srand(4);
+ random_fill(buffers);
+
+ buffers.set_channels(13);
+ BOOST_REQUIRE_EQUAL(buffers.channels(), 13U);
+
+ srand(4);
+ for (int i = 0; i < 9933; ++i) {
+ for (int c = 0; c < 9; ++c) {
+ BOOST_CHECK_EQUAL(buffers.data(c)[i], random_float());
+ }
+ for (int c = 9; c < 13; ++c) {
+ BOOST_CHECK_EQUAL(buffers.data(c)[i], 0);
+ }
+ }
+}