BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
binutils.test.cpp
Go to the documentation of this file.
1 // ************************************************************************************************
2 //
3 // qt-mvvm: Model-view-view-model framework for large GUI applications
4 //
5 //! @file mvvm/tests/testmodel/binutils.test.cpp
6 //! @brief Implements class CLASS?
7 //!
8 //! @homepage http://www.bornagainproject.org
9 //! @license GNU General Public License v3 or higher (see COPYING)
10 //! @copyright Forschungszentrum Jülich GmbH 2020
11 //! @authors Gennady Pospelov et al, Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12 //
13 // ************************************************************************************************
14 
15 #include "google_test.h"
16 #include "mvvm/utils/binutils.h"
17 #include <testconfig.h>
18 
19 using namespace ModelView;
20 
21 //! Testing BinUtils
22 
23 class BinUtilsTest : public ::testing::Test {
24 public:
26 };
27 
28 BinUtilsTest::~BinUtilsTest() = default;
29 
30 //! Testing Binary Files
31 
32 TEST_F(BinUtilsTest, testBinaryFiles)
33 {
34  std::string root_path = TestConfig::TestData();
35 
36  std::string binary_file1 = root_path + std::string("/") + "pdf_file";
37  std::string binary_file2 = root_path + std::string("/") + "png_file.png";
38  std::string binary_file3 = root_path + std::string("/") + "word_file";
39  std::string binary_file4 = root_path + std::string("/") + "mandelbrot.ppm";
40  std::string binary_file5 = root_path + std::string("/") + "c++_exec";
41 
42  EXPECT_TRUE(Utils::is_binary(binary_file1));
43  EXPECT_TRUE(Utils::is_binary(binary_file2));
44  EXPECT_TRUE(Utils::is_binary(binary_file3));
45  EXPECT_TRUE(Utils::is_binary(binary_file4));
46  EXPECT_TRUE(Utils::is_binary(binary_file5));
47 
48  EXPECT_FALSE(Utils::is_text(binary_file1));
49  EXPECT_FALSE(Utils::is_text(binary_file2));
50  EXPECT_FALSE(Utils::is_text(binary_file3));
51  EXPECT_FALSE(Utils::is_text(binary_file4));
52  EXPECT_FALSE(Utils::is_text(binary_file5));
53 }
54 
55 //! Testing text files
56 
57 TEST_F(BinUtilsTest, testTextFiles)
58 {
59  std::string root_path = TestConfig::TestData();
60 
61  std::string text_file1 = root_path + std::string("/") + "text_UTF-8.txt";
62  std::string text_file2 = root_path + std::string("/") + "text_UTF-8-BOM.txt";
63 
64  EXPECT_TRUE(Utils::is_text(text_file1));
65  EXPECT_TRUE(Utils::is_text(text_file2));
66 
67  EXPECT_FALSE(Utils::is_binary(text_file1));
68  EXPECT_FALSE(Utils::is_binary(text_file2));
69 }
Defines class CLASS?
TEST_F(BinUtilsTest, testBinaryFiles)
Testing Binary Files.
Testing BinUtils.
Defines class CLASS?
bool is_text(const std::string &filename)
Returns true if file is text/ascii.
Definition: binutils.cpp:53
bool is_binary(const std::string &filename)
Returns true if file is binary.
Definition: binutils.cpp:33
materialitems.h Collection of materials to populate MaterialModel.