/* Copyright (C) 2015 Carl Hetherington This file is part of libdcp. libdcp is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. libdcp is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with libdcp. If not, see . */ #include #include "asset.h" using std::string; using boost::shared_ptr; class DummyAsset : public dcp::Asset { protected: std::string pkl_type (dcp::Standard) const { return "none"; } }; static void note_handler (dcp::NoteType, string) { } /** Test a few dusty corners of Asset */ BOOST_AUTO_TEST_CASE (asset_test) { shared_ptr a (new DummyAsset); a->_hash = "abc"; shared_ptr b (new DummyAsset); b->_hash = "def"; BOOST_CHECK (!a->equals (b, dcp::EqualityOptions (), boost::bind (¬e_handler, _1, _2))); b->_hash = "abc"; BOOST_CHECK (a->equals (b, dcp::EqualityOptions (), boost::bind (¬e_handler, _1, _2))); b->_file = "foo/bar/baz"; BOOST_CHECK (a->equals (b, dcp::EqualityOptions (), boost::bind (¬e_handler, _1, _2))); }