diff options
| -rw-r--r-- | src/lib/release_notes.cc | 2 | ||||
| -rw-r--r-- | test/release_notes_test.cc | 49 | ||||
| -rw-r--r-- | test/wscript | 1 |
3 files changed, 51 insertions, 1 deletions
diff --git a/src/lib/release_notes.cc b/src/lib/release_notes.cc index face4df2c..236713184 100644 --- a/src/lib/release_notes.cc +++ b/src/lib/release_notes.cc @@ -45,7 +45,7 @@ find_release_notes(optional<string> current) const string header = String::compose("<h1>DCP-o-matic %1 release notes</h1>", *current); - if (*current == "2.16.18") { + if (!last) { return header + _("In this version there are changes to the way that subtitles are positioned. " "Positioning should now be more correct, with respect to the standards, but you " diff --git a/test/release_notes_test.cc b/test/release_notes_test.cc new file mode 100644 index 000000000..394de5959 --- /dev/null +++ b/test/release_notes_test.cc @@ -0,0 +1,49 @@ +/* + Copyright (C) 2022 Carl Hetherington <cth@carlh.net> + + This file is part of DCP-o-matic. + + DCP-o-matic 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. + + DCP-o-matic 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 DCP-o-matic. If not, see <http://www.gnu.org/licenses/>. + +*/ + + +#include "lib/config.h" +#include "lib/release_notes.h" +#include <boost/test/unit_test.hpp> + + +using std::string; + + +// If we have no previous version we're on something before 2.16.19 so we want the release notes +BOOST_AUTO_TEST_CASE(release_notes_test1) +{ + for (auto version: { "2.16.19", "2.16.20", "2.18.0", "2.18.1devel6" }) { + Config::instance()->unset_last_release_notes_version(); + auto notes = find_release_notes(string(version)); + BOOST_CHECK(notes.get_value_or("").find("In this version there are changes to the way that subtitles are positioned.") != string::npos); + } +} + + +// Once we're running 2.16.19 we have no more release notes (for now, at least) +BOOST_AUTO_TEST_CASE(release_notes_test2) +{ + for (auto version: { "2.16.19", "2.16.20", "2.18.0", "2.18.1devel6" }) { + Config::instance()->set_last_release_notes_version("2.16.19"); + auto notes = find_release_notes(string(version)); + BOOST_CHECK(!static_cast<bool>(notes)); + } +} diff --git a/test/wscript b/test/wscript index 0bcecad0c..9cf13dea5 100644 --- a/test/wscript +++ b/test/wscript @@ -115,6 +115,7 @@ def build(bld): player_test.cc pulldown_detect_test.cc ratio_test.cc + release_notes_test.cc repeat_frame_test.cc recover_test.cc rect_test.cc |
