- BOOST_CHECK_THROW (new Film ("build/test/film", true), OpenFileError);
-
- Film f (test_film, false);
- BOOST_CHECK (f.format() == 0);
- BOOST_CHECK (f.dcp_content_type() == 0);
- BOOST_CHECK (f.filters ().empty());
-
- f.set_name ("fred");
- BOOST_CHECK_THROW (f.set_content ("jim"), OpenFileError);
- f.set_dcp_content_type (DCPContentType::from_pretty_name ("Short"));
- f.set_format (Format::from_nickname ("Flat"));
- f.set_left_crop (1);
- f.set_right_crop (2);
- f.set_top_crop (3);
- f.set_bottom_crop (4);
- vector<Filter const *> f_filters;
- f_filters.push_back (Filter::from_id ("pphb"));
- f_filters.push_back (Filter::from_id ("unsharp"));
- f.set_filters (f_filters);
- f.set_dcp_frames (42);
- f.set_dcp_ab (true);
- f.write_metadata ();
-
- stringstream s;
- s << "diff -u test/metadata.ref " << test_film << "/metadata";
- BOOST_CHECK_EQUAL (::system (s.str().c_str ()), 0);
-
- Film g (test_film, true);
-
- BOOST_CHECK_EQUAL (g.name(), "fred");
- BOOST_CHECK_EQUAL (g.dcp_content_type(), DCPContentType::from_pretty_name ("Short"));
- BOOST_CHECK_EQUAL (g.format(), Format::from_nickname ("Flat"));
- BOOST_CHECK_EQUAL (g.crop().left, 1);
- BOOST_CHECK_EQUAL (g.crop().right, 2);
- BOOST_CHECK_EQUAL (g.crop().top, 3);
- BOOST_CHECK_EQUAL (g.crop().bottom, 4);
- vector<Filter const *> g_filters = g.filters ();
- BOOST_CHECK_EQUAL (g_filters.size(), 2);
- BOOST_CHECK_EQUAL (g_filters.front(), Filter::from_id ("pphb"));
- BOOST_CHECK_EQUAL (g_filters.back(), Filter::from_id ("unsharp"));
- BOOST_CHECK_EQUAL (g.dcp_frames(), 42);
- BOOST_CHECK_EQUAL (g.dcp_ab(), true);
-
- g.write_metadata ();
- BOOST_CHECK_EQUAL (::system (s.str().c_str ()), 0);
-}
-
-BOOST_AUTO_TEST_CASE (format_test)
-{
- Format::setup_formats ();
-
- Format const * f = Format::from_nickname ("Flat");
- BOOST_CHECK (f);
- BOOST_CHECK_EQUAL (f->ratio_as_integer(0), 185);
-
- f = Format::from_nickname ("Scope");
- BOOST_CHECK (f);
- BOOST_CHECK_EQUAL (f->ratio_as_integer(0), 239);
-}
-
-BOOST_AUTO_TEST_CASE (util_test)
-{
- string t = "Hello this is a string \"with quotes\" and indeed without them";
- vector<string> b = split_at_spaces_considering_quotes (t);
- vector<string>::iterator i = b.begin ();
- BOOST_CHECK_EQUAL (*i++, "Hello");
- BOOST_CHECK_EQUAL (*i++, "this");
- BOOST_CHECK_EQUAL (*i++, "is");
- BOOST_CHECK_EQUAL (*i++, "a");
- BOOST_CHECK_EQUAL (*i++, "string");
- BOOST_CHECK_EQUAL (*i++, "with quotes");
- BOOST_CHECK_EQUAL (*i++, "and");
- BOOST_CHECK_EQUAL (*i++, "indeed");
- BOOST_CHECK_EQUAL (*i++, "without");
- BOOST_CHECK_EQUAL (*i++, "them");
-}