Make DCPExaminer::size() optional and deal with the consequences.
[dcpomatic.git] / test / video_content_scale_test.cc
index 73feb7dc66460dbaebd87e1158f687aaeb8f7acf..c82392f8115bfb95cbdcace363d52b2d433c14bd 100644 (file)
@@ -38,37 +38,37 @@ BOOST_AUTO_TEST_CASE (scaled_size_test1)
        /* Images at full size and in DCP-approved sizes that will not be scaled */
        // Flat/scope content into flat/scope container
        vc._size = FLAT;
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FLAT);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FLAT);
        vc._size = SCOPE;
-       BOOST_CHECK_EQUAL (vc.scaled_size(SCOPE), SCOPE);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(SCOPE), SCOPE);
        // 1.33:1 into flat container
        vc._size = FOUR_TO_THREE;
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
        // Scope into flat container
        vc._size = SCOPE;
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 837));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 837));
 
        /* Smaller images but in the same ratios */
        vc._size = dcp::Size(185, 100);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FLAT);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FLAT);
        vc._size = dcp::Size(955, 400);
-       BOOST_CHECK_EQUAL (vc.scaled_size(SCOPE), SCOPE);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(SCOPE), SCOPE);
        // 1.33:1 into flat container
        vc._size = dcp::Size(133, 100);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
        // Scope into flat container
        vc._size = dcp::Size(239, 100);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 836));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 836));
 
        /* Images at full size that are not DCP-approved but will still remain unscaled */
        vc._size = dcp::Size(600, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(600, 1080));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(600, 1080));
        vc._size = dcp::Size(1700, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1700, 1080));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1700, 1080));
 
        /* Image at full size that is too big for the container and will be shrunk */
        vc._size = dcp::Size(3000, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 719));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 719));
 }
 
 
@@ -82,37 +82,37 @@ BOOST_AUTO_TEST_CASE (scaled_size_test2)
        /* Images at full size and in DCP-approved sizes that will not be scaled */
        // Flat/scope content into flat/scope container
        vc._size = dcp::Size (1998 / 2, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FLAT);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FLAT);
        vc._size = dcp::Size (2048 / 2, 858);
-       BOOST_CHECK_EQUAL (vc.scaled_size(SCOPE), SCOPE);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(SCOPE), SCOPE);
        // 1.33:1 into flat container
        vc._size = dcp::Size (1436 / 2, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
        // Scope into flat container
        vc._size = dcp::Size (2048 / 2, 858);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 837));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 837));
 
        /* Smaller images but in the same ratios */
        vc._size = dcp::Size(185, 200);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FLAT);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FLAT);
        vc._size = dcp::Size(955, 800);
-       BOOST_CHECK_EQUAL (vc.scaled_size(SCOPE), SCOPE);
+       BOOST_CHECK_EQUAL(*vc.scaled_size(SCOPE), SCOPE);
        // 4:3 into flat container
        vc._size = dcp::Size(133, 200);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(FOUR_TO_THREE));
        // Scope into flat container
        vc._size = dcp::Size(239, 200);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 836));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 836));
 
        /* Images at full size that are not DCP-approved but will still remain unscaled */
        vc._size = dcp::Size(600 / 2, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(600, 1080));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(600, 1080));
        vc._size = dcp::Size(1700 / 2, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1700, 1080));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1700, 1080));
 
        /* Image at full size that is too big for the container and will be shrunk */
        vc._size = dcp::Size(3000 / 2, 1080);
-       BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(1998, 719));
+       BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(1998, 719));
 }
 
 
@@ -124,7 +124,7 @@ BOOST_AUTO_TEST_CASE (scaled_size_legacy_test)
                VideoContent vc (0);
                vc._size = dcp::Size(640, 480);
                vc._legacy_ratio = Ratio::from_id("185")->ratio();
-               BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FLAT);
+               BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FLAT);
        }
 
        {
@@ -132,7 +132,7 @@ BOOST_AUTO_TEST_CASE (scaled_size_legacy_test)
                VideoContent vc (0);
                vc._size = dcp::Size(640, 480);
                vc._legacy_ratio = 1.33;
-               BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), FOUR_TO_THREE);
+               BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), FOUR_TO_THREE);
        }
 
        {
@@ -140,7 +140,7 @@ BOOST_AUTO_TEST_CASE (scaled_size_legacy_test)
                VideoContent vc (0);
                vc._size = dcp::Size(640, 480);
                vc._custom_size = dcp::Size(640, 480);
-               BOOST_CHECK_EQUAL (vc.scaled_size(FLAT), dcp::Size(640, 480));
+               BOOST_CHECK_EQUAL(*vc.scaled_size(FLAT), dcp::Size(640, 480));
        }
 }