2 Copyright (C) 2014-2020 Carl Hetherington <cth@carlh.net>
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 #include "stl_binary_reader.h"
24 #include <boost/test/unit_test.hpp>
29 using std::shared_ptr;
31 /* Test reading of a binary STL file */
32 BOOST_AUTO_TEST_CASE (stl_binary_reader_test1)
34 if (private_test.empty ()) {
38 using boost::filesystem::path;
40 path stl = private_test / "VA_24fps_Reel_6_DE_FR.stl";
41 ifstream in (stl.string().c_str());
42 shared_ptr<sub::STLBinaryReader> r (new sub::STLBinaryReader(in));
43 path dump = path("build") / path("test") / path("VA_24fps_Reel_6_DE_FR.dump");
44 ofstream dump_stream (dump.string().c_str());
45 sub::dump (r, dump_stream);
48 check_file (private_test / "VA_24fps_Reel_6_DE_FR.dump", dump);
51 /* Test reading the same file but with the FILE* interface */
52 BOOST_AUTO_TEST_CASE (stl_binary_reader_test2)
54 if (private_test.empty ()) {
58 using boost::filesystem::path;
60 path stl = private_test / "VA_24fps_Reel_6_DE_FR.stl";
61 FILE* in = fopen (stl.string().c_str(), "rb");
63 shared_ptr<sub::STLBinaryReader> r (new sub::STLBinaryReader(in));
65 path dump = path("build") / path("test") / path("VA_24fps_Reel_6_DE_FR.dump");
66 ofstream dump_stream (dump.string().c_str());
67 sub::dump (r, dump_stream);