X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fdcpomatic_time_test.cc;h=5d23f247808135eeadfc94ad17451ffb7b42db45;hb=d311043bf3c1e3e7f41b314f7ab7c91ed7e5aa7f;hp=5b58c369b047fe3a9b05ae10777d819258d302d3;hpb=c4403784febdbdd42e9c32e67fadb147f11fe566;p=dcpomatic.git diff --git a/test/dcpomatic_time_test.cc b/test/dcpomatic_time_test.cc index 5b58c369b..5d23f2478 100644 --- a/test/dcpomatic_time_test.cc +++ b/test/dcpomatic_time_test.cc @@ -19,7 +19,7 @@ */ /** @file test/dcpomatic_time_test.cc - * @brief Test Time and TimePeriod classes. + * @brief Test dcpomatic::Time and dcpomatic::TimePeriod classes. * @ingroup selfcontained */ @@ -244,7 +244,7 @@ BOOST_AUTO_TEST_CASE (dcpomatic_time_period_coalesce_test1) p.push_back (A); p.push_back (B); list q = coalesce (p); - BOOST_REQUIRE_EQUAL (q.size(), 2); + BOOST_REQUIRE_EQUAL (q.size(), 2U); BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(14), DCPTime(29))); BOOST_CHECK (q.back () == DCPTimePeriod(DCPTime(45), DCPTime(91))); } @@ -257,7 +257,7 @@ BOOST_AUTO_TEST_CASE (dcpomatic_time_period_coalesce_test2) p.push_back (A); p.push_back (B); list q = coalesce (p); - BOOST_REQUIRE_EQUAL (q.size(), 1); + BOOST_REQUIRE_EQUAL (q.size(), 1U); BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(14), DCPTime(91))); } @@ -269,7 +269,7 @@ BOOST_AUTO_TEST_CASE (dcpomatic_time_period_coalesce_test3) p.push_back (A); p.push_back (B); list q = coalesce (p); - BOOST_REQUIRE_EQUAL (q.size(), 1); + BOOST_REQUIRE_EQUAL (q.size(), 1U); BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(14), DCPTime(91))); } @@ -283,7 +283,7 @@ BOOST_AUTO_TEST_CASE (dcpomatic_time_period_coalesce_test4) p.push_back (B); p.push_back (C); list q = coalesce (p); - BOOST_REQUIRE_EQUAL (q.size(), 1); + BOOST_REQUIRE_EQUAL (q.size(), 1U); BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(14), DCPTime(106))); } @@ -297,11 +297,23 @@ BOOST_AUTO_TEST_CASE (dcpomatic_time_period_coalesce_test5) p.push_back (B); p.push_back (C); list q = coalesce (p); - BOOST_REQUIRE_EQUAL (q.size(), 2); + BOOST_REQUIRE_EQUAL (q.size(), 2U); BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(14), DCPTime(91))); BOOST_CHECK (q.back() == DCPTimePeriod(DCPTime(100), DCPTime(106))); } +BOOST_AUTO_TEST_CASE (test_coalesce_with_overlapping_periods) +{ + DCPTimePeriod A (DCPTime(0), DCPTime(10)); + DCPTimePeriod B (DCPTime(2), DCPTime(8)); + list p; + p.push_back (A); + p.push_back (B); + auto q = coalesce(p); + BOOST_REQUIRE_EQUAL (q.size(), 1U); + BOOST_CHECK (q.front() == DCPTimePeriod(DCPTime(0), DCPTime(10))); +} + /* Straightforward test of DCPTime::ceil */ BOOST_AUTO_TEST_CASE (dcpomatic_time_ceil_test) {