Bump version
[dcpomatic.git] / test / audio_mapping_test.cc
index 1fc20dcaf6e0433dcfcaebdcf3afc4a0ddcc955c..d24efedfdcd5ae5899811791290cbbb2a8389ec1 100644 (file)
 
 */
 
+/** @file  test/audio_mapping_test.cc
+ *  @brief Basic tests of the AudioMapping class, which itself doesn't really do much.
+ */
+
 #include <boost/test/unit_test.hpp>
 #include "lib/audio_mapping.h"
 #include "lib/util.h"
 
-/* Basic tests of the AudioMapping class, which itself
-   doesn't really do much.
-*/
+using std::list;
+
 BOOST_AUTO_TEST_CASE (audio_mapping_test)
 {
        AudioMapping none;
-       BOOST_CHECK_EQUAL (none.content_channels(), 0);
+       BOOST_CHECK_EQUAL (none.input_channels(), 0);
 
-       AudioMapping four (4);
-       BOOST_CHECK_EQUAL (four.content_channels(), 4);
-       four.make_default ();
+       AudioMapping four (4, MAX_DCP_AUDIO_CHANNELS);
+       BOOST_CHECK_EQUAL (four.input_channels(), 4);
+
+       four.set (0, 1, 1);
 
        for (int i = 0; i < 4; ++i) {
-               for (int j = 0; j < MAX_AUDIO_CHANNELS; ++j) {
-                       BOOST_CHECK_EQUAL (four.get (i, static_cast<dcp::Channel> (j)), i == j ? 1 : 0);
+               for (int j = 0; j < MAX_DCP_AUDIO_CHANNELS; ++j) {
+                       BOOST_CHECK_EQUAL (four.get (i, j), (i == 0 && j == 1) ? 1 : 0);
                }
        }
 
-       four.set (0, dcp::RIGHT, 1);
-       BOOST_CHECK_EQUAL (four.get (0, dcp::RIGHT), 1);
+       list<int> mapped = four.mapped_output_channels ();
+       BOOST_CHECK_EQUAL (mapped.size(), 1);
+       BOOST_CHECK_EQUAL (mapped.front(), 1);
+
+       four.make_zero ();
+
+       for (int i = 0; i < 4; ++i) {
+               for (int j = 0; j < MAX_DCP_AUDIO_CHANNELS; ++j) {
+                       BOOST_CHECK_EQUAL (four.get (i, j), 0);
+               }
+       }
 }