Somewhat untested and sketchy basics of trimming.
[dcpomatic.git] / test / play_test.cc
index 12f80a282c0e29c0a7254e5f1e2f39ddaf5bf85d..e1fffa1d86422ba1f6dd7f160e632a3e4dcfe5f7 100644 (file)
 
 */
 
-#include "player.h"
+#include <boost/test/unit_test.hpp>
+#include "lib/player.h"
+#include "lib/ratio.h"
+#include "lib/dcp_content_type.h"
+#include "test.h"
 
 /* This test needs stuff in Player that is only included in debug mode */
 #ifdef DCPOMATIC_DEBUG
 
+using std::cout;
 using boost::optional;
+using boost::shared_ptr;
 
 struct Video
 {
@@ -37,7 +43,7 @@ public:
        PlayerWrapper (shared_ptr<Player> p)
                : _player (p)
        {
-               _player->Video.connect (bind (&PlayerWrapper::process_video, this, _1, _2, _3));
+               _player->Video.connect (bind (&PlayerWrapper::process_video, this, _1, _2, _4));
        }
 
        void process_video (shared_ptr<const Image> i, bool, Time t)
@@ -92,13 +98,13 @@ BOOST_AUTO_TEST_CASE (play_test)
        BOOST_CHECK_EQUAL (B->video_length(), 16);
        
        /* Film should have been set to 25fps */
-       BOOST_CHECK_EQUAL (film->dcp_video_frame_rate(), 25);
+       BOOST_CHECK_EQUAL (film->video_frame_rate(), 25);
 
-       BOOST_CHECK_EQUAL (A->start(), 0);
+       BOOST_CHECK_EQUAL (A->position(), 0);
        /* A is 16 frames long at 25 fps */
-       BOOST_CHECK_EQUAL (B->start(), 16 * TIME_HZ / 25);
+       BOOST_CHECK_EQUAL (B->position(), 16 * TIME_HZ / 25);
 
-       shared_ptr<Player> player = film->player ();
+       shared_ptr<Player> player = film->make_player ();
        PlayerWrapper wrap (player);
        /* Seek and audio don't get on at the moment */
        player->disable_audio ();
@@ -116,7 +122,6 @@ BOOST_AUTO_TEST_CASE (play_test)
        player->seek (10 * TIME_HZ / 25, true);
        optional<Video> v = wrap.get_video ();
        BOOST_CHECK (v);
-       cout << (v.get().time * 25 / TIME_HZ) << "\n";
        BOOST_CHECK_EQUAL (v.get().time, 10 * TIME_HZ / 25);
 }