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>
30 using boost::shared_ptr;
32 /* Test reading of a binary STL file */
33 BOOST_AUTO_TEST_CASE (stl_binary_reader_test1)
35 if (private_test.empty ()) {
39 using boost::filesystem::path;
41 path stl = private_test / "VA_24fps_Reel_6_DE_FR.stl";
42 ifstream in (stl.string().c_str());
43 shared_ptr<sub::STLBinaryReader> r (new sub::STLBinaryReader(in));
44 path dump = path("build") / path("test") / path("VA_24fps_Reel_6_DE_FR.dump");
45 ofstream dump_stream (dump.string().c_str());
46 sub::dump (r, dump_stream);
49 check_file (private_test / "VA_24fps_Reel_6_DE_FR.dump", dump);
52 /* Test reading the same file but with the FILE* interface */
53 BOOST_AUTO_TEST_CASE (stl_binary_reader_test2)
55 if (private_test.empty ()) {
59 using boost::filesystem::path;
61 path stl = private_test / "VA_24fps_Reel_6_DE_FR.stl";
62 FILE* in = fopen (stl.string().c_str(), "rb");
64 shared_ptr<sub::STLBinaryReader> r (new sub::STLBinaryReader(in));
66 path dump = path("build") / path("test") / path("VA_24fps_Reel_6_DE_FR.dump");
67 ofstream dump_stream (dump.string().c_str());
68 sub::dump (r, dump_stream);