From 046760570a88e1ef83154467b5a63cf133950087 Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Thu, 23 Apr 2020 17:15:10 +0200
Subject: [PATCH] [BL] Refactored getFileExtension().

---
 .../DataExplorer/VtkVis/VtkVisImageItem.cpp   |   2 +-
 .../VtkVis/VtkVisPointSetItem.cpp             |   4 +-
 Applications/FileIO/AsciiRasterInterface.cpp  |   4 +-
 Applications/FileIO/SWMM/SWMMInterface.cpp    |   2 +-
 Applications/FileIO/TetGenInterface.cpp       |   2 +-
 Applications/FileIO/readGeometryFromFile.cpp  |   2 +-
 Applications/FileIO/writeGeometryToFile.cpp   |   2 +-
 .../MeshEdit/createLayeredMeshFromRasters.cpp |   2 +-
 Applications/Utils/MeshEdit/moveMeshNodes.cpp |   2 +-
 .../createIntermediateRasters.cpp             |   2 +-
 Applications/Utils/PostProcessing/postLIE.cpp |   4 +-
 .../Utils/SWMMConverter/SWMMConverter.cpp     |   6 +-
 BaseLib/FileTools.cpp                         |  28 +---
 MeshLib/IO/VtkIO/VtuInterface.cpp             |   2 +-
 MeshLib/IO/readMeshFromFile.cpp               |   4 +-
 MeshLib/IO/writeMeshToFile.cpp                |   4 +-
 .../TestFilePathStringManipulation.cpp        | 144 ------------------
 Tests/FileIO/TestTetGenInterface.cpp          |   1 +
 18 files changed, 23 insertions(+), 194 deletions(-)
 delete mode 100644 Tests/BaseLib/TestFilePathStringManipulation.cpp

diff --git a/Applications/DataExplorer/VtkVis/VtkVisImageItem.cpp b/Applications/DataExplorer/VtkVis/VtkVisImageItem.cpp
index 0d3259e58ef..e35f4ddadc1 100644
--- a/Applications/DataExplorer/VtkVis/VtkVisImageItem.cpp
+++ b/Applications/DataExplorer/VtkVis/VtkVisImageItem.cpp
@@ -160,7 +160,7 @@ int VtkVisImageItem::callVTKWriter(vtkAlgorithm* algorithm, const std::string &f
         vtkSmartPointer<vtkXMLImageDataWriter> iWriter =
                 vtkSmartPointer<vtkXMLImageDataWriter>::New();
         iWriter->SetInputData(algID->GetOutputDataObject(0));
-        if (BaseLib::getFileExtension(filename) != "vti")
+        if (BaseLib::getFileExtension(filename) != ".vti")
         {
             file_name_cpy.append(".vti");
         }
diff --git a/Applications/DataExplorer/VtkVis/VtkVisPointSetItem.cpp b/Applications/DataExplorer/VtkVis/VtkVisPointSetItem.cpp
index 46ad898ef7a..901282e77d2 100644
--- a/Applications/DataExplorer/VtkVis/VtkVisPointSetItem.cpp
+++ b/Applications/DataExplorer/VtkVis/VtkVisPointSetItem.cpp
@@ -252,7 +252,7 @@ int VtkVisPointSetItem::callVTKWriter(vtkAlgorithm* algorithm, const std::string
         vtkSmartPointer<vtkXMLPolyDataWriter> pdWriter =
                 vtkSmartPointer<vtkXMLPolyDataWriter>::New();
         pdWriter->SetInputData(algPD->GetOutputDataObject(0));
-        if (BaseLib::getFileExtension(filename) != "vtp")
+        if (BaseLib::getFileExtension(filename) != ".vtp")
         {
             file_name_cpy.append(".vtp");
         }
@@ -266,7 +266,7 @@ int VtkVisPointSetItem::callVTKWriter(vtkAlgorithm* algorithm, const std::string
         vtkSmartPointer<vtkXMLUnstructuredGridWriter> ugWriter =
                 vtkSmartPointer<vtkXMLUnstructuredGridWriter>::New();
         ugWriter->SetInputData(algUG->GetOutputDataObject(0));
-        if (BaseLib::getFileExtension(filename) != "vtu")
+        if (BaseLib::getFileExtension(filename) != ".vtu")
         {
             file_name_cpy.append(".vtu");
         }
diff --git a/Applications/FileIO/AsciiRasterInterface.cpp b/Applications/FileIO/AsciiRasterInterface.cpp
index e955fa28729..0e5ede1797b 100644
--- a/Applications/FileIO/AsciiRasterInterface.cpp
+++ b/Applications/FileIO/AsciiRasterInterface.cpp
@@ -28,11 +28,11 @@ GeoLib::Raster* AsciiRasterInterface::readRaster(std::string const& fname)
 {
     std::string ext (BaseLib::getFileExtension(fname));
     std::transform(ext.begin(), ext.end(), ext.begin(), tolower);
-    if (ext == "asc")
+    if (ext == ".asc")
     {
         return getRasterFromASCFile(fname);
     }
-    if (ext == "grd")
+    if (ext == ".grd")
     {
         return getRasterFromSurferFile(fname);
     }
diff --git a/Applications/FileIO/SWMM/SWMMInterface.cpp b/Applications/FileIO/SWMM/SWMMInterface.cpp
index 7c3712919d0..072afa33128 100644
--- a/Applications/FileIO/SWMM/SWMMInterface.cpp
+++ b/Applications/FileIO/SWMM/SWMMInterface.cpp
@@ -127,7 +127,7 @@ SwmmInterface::~SwmmInterface()
 
 bool SwmmInterface::isSwmmInputFile(std::string const& inp_file_name)
 {
-    if (!boost::iequals(BaseLib::getFileExtension(inp_file_name), "inp"))
+    if (!boost::iequals(BaseLib::getFileExtension(inp_file_name), ".inp"))
     {
         ERR("SWMMInterface: {:s} is not a SWMM input file.", inp_file_name);
         return false;
diff --git a/Applications/FileIO/TetGenInterface.cpp b/Applications/FileIO/TetGenInterface.cpp
index d138aae57fe..1548468abc6 100644
--- a/Applications/FileIO/TetGenInterface.cpp
+++ b/Applications/FileIO/TetGenInterface.cpp
@@ -47,7 +47,7 @@ bool TetGenInterface::readTetGenGeometry (std::string const& geo_fname,
         return false;
     }
     std::string ext (BaseLib::getFileExtension(geo_fname));
-    if (ext != "smesh")
+    if (ext != ".smesh")
     {
         ERR ("TetGenInterface::readTetGenGeometry() - unknown file type (only *.smesh is supported).");
         return false;
diff --git a/Applications/FileIO/readGeometryFromFile.cpp b/Applications/FileIO/readGeometryFromFile.cpp
index d1ba309b59b..cb4b540c347 100644
--- a/Applications/FileIO/readGeometryFromFile.cpp
+++ b/Applications/FileIO/readGeometryFromFile.cpp
@@ -26,7 +26,7 @@ void readGeometryFromFile(std::string const& fname,
                           GeoLib::GEOObjects& geo_objs,
                           std::string const& gmsh_path)
 {
-    if (BaseLib::getFileExtension(fname) == "gml")
+    if (BaseLib::getFileExtension(fname) == ".gml")
     {
         GeoLib::IO::BoostXmlGmlInterface xml(geo_objs);
         xml.readFile(fname);
diff --git a/Applications/FileIO/writeGeometryToFile.cpp b/Applications/FileIO/writeGeometryToFile.cpp
index b0446b1fef7..75584d897df 100644
--- a/Applications/FileIO/writeGeometryToFile.cpp
+++ b/Applications/FileIO/writeGeometryToFile.cpp
@@ -23,7 +23,7 @@ void writeGeometryToFile(std::string const& geo_name,
     GeoLib::GEOObjects& geo_objs, std::string const& fname)
 {
     std::string const extension(BaseLib::getFileExtension(fname));
-    if (extension == "gml" || extension == "GML") {
+    if (extension == ".gml" || extension == ".GML") {
         GeoLib::IO::BoostXmlGmlInterface xml(geo_objs);
         xml.setNameForExport(geo_name);
         xml.writeToFile(fname);
diff --git a/Applications/Utils/MeshEdit/createLayeredMeshFromRasters.cpp b/Applications/Utils/MeshEdit/createLayeredMeshFromRasters.cpp
index 010cfdeefe4..e0406999ea3 100644
--- a/Applications/Utils/MeshEdit/createLayeredMeshFromRasters.cpp
+++ b/Applications/Utils/MeshEdit/createLayeredMeshFromRasters.cpp
@@ -148,7 +148,7 @@ int main (int argc, char* argv[])
     }
 
     std::string output_name(mesh_out_arg.getValue());
-    if (!BaseLib::hasFileExtension("vtu", output_name))
+    if (!BaseLib::hasFileExtension(".vtu", output_name))
     {
         output_name.append(".vtu");
     }
diff --git a/Applications/Utils/MeshEdit/moveMeshNodes.cpp b/Applications/Utils/MeshEdit/moveMeshNodes.cpp
index dd8cabb7b48..5a4bf109067 100644
--- a/Applications/Utils/MeshEdit/moveMeshNodes.cpp
+++ b/Applications/Utils/MeshEdit/moveMeshNodes.cpp
@@ -72,7 +72,7 @@ int main (int argc, char* argv[])
     const std::string msh_name(argv[1]);
     const std::string current_key(argv[2]);
     std::string const ext (BaseLib::getFileExtension(msh_name));
-    if (!(ext == "msh" || ext == "vtu"))
+    if (!(ext == ".msh" || ext == ".vtu"))
     {
         ERR("Error: Parameter 1 must be a mesh-file (*.msh / *.vtu).");
         INFO("Usage: {:s} <msh-file.gml> <keyword> <value>", argv[0]);
diff --git a/Applications/Utils/MeshGeoTools/createIntermediateRasters.cpp b/Applications/Utils/MeshGeoTools/createIntermediateRasters.cpp
index 3797c509653..c33f4059d60 100644
--- a/Applications/Utils/MeshGeoTools/createIntermediateRasters.cpp
+++ b/Applications/Utils/MeshGeoTools/createIntermediateRasters.cpp
@@ -140,7 +140,7 @@ int main(int argc, char* argv[])
         std::string const ext = BaseLib::getFileExtension(filename);
 
         GeoLib::Raster r(h1, raster[i].begin(), raster[i].end());
-        FileIO::AsciiRasterInterface::writeRasterAsASC(r, basename + std::to_string(i) + "." + ext);
+        FileIO::AsciiRasterInterface::writeRasterAsASC(r, basename + std::to_string(i) + ext);
         INFO("Layer {:d} written.", i + 1);
     }
     return EXIT_SUCCESS;
diff --git a/Applications/Utils/PostProcessing/postLIE.cpp b/Applications/Utils/PostProcessing/postLIE.cpp
index d2e09168701..9ec2fa58845 100644
--- a/Applications/Utils/PostProcessing/postLIE.cpp
+++ b/Applications/Utils/PostProcessing/postLIE.cpp
@@ -136,11 +136,11 @@ int main(int argc, char* argv[])
     cmd.parse(argc, argv);
 
     auto const in_file_ext = BaseLib::getFileExtension(arg_in_file.getValue());
-    if (in_file_ext == "pvd")
+    if (in_file_ext == ".pvd")
     {
         postPVD(arg_in_file.getValue(), arg_out_file.getValue());
     }
-    else if (in_file_ext == "vtu")
+    else if (in_file_ext == ".vtu")
     {
         postVTU(arg_in_file.getValue(), arg_out_file.getValue());
     }
diff --git a/Applications/Utils/SWMMConverter/SWMMConverter.cpp b/Applications/Utils/SWMMConverter/SWMMConverter.cpp
index d1f4cf4c036..a751557095d 100644
--- a/Applications/Utils/SWMMConverter/SWMMConverter.cpp
+++ b/Applications/Utils/SWMMConverter/SWMMConverter.cpp
@@ -78,8 +78,7 @@ int writeMeshOutput(std::string const& input_file,
     }
 
     std::string const basename = BaseLib::dropFileExtension(output_file);
-    std::string const extension =
-        std::string("." + BaseLib::getFileExtension(output_file));
+    std::string const extension = BaseLib::getFileExtension(output_file);
     std::size_t const n_time_steps(swmm->getNumberOfTimeSteps());
     INFO("Number of simulation time steps: {:d}", n_time_steps);
     for (std::size_t i = 0; i < n_time_steps; i++)
@@ -138,8 +137,7 @@ int writeCsvOutput(std::string input_file,
     }
 
     std::string const basename = BaseLib::dropFileExtension(output_file);
-    std::string const extension =
-        std::string("." + BaseLib::getFileExtension(output_file));
+    std::string const extension = BaseLib::getFileExtension(output_file);
 
     if (node_args)
         writeObjectsOfSwmmTypeToCsv(*swmm, FileIO::SwmmObject::NODE, basename,
diff --git a/BaseLib/FileTools.cpp b/BaseLib/FileTools.cpp
index a6952cf0dcc..545dc17436e 100644
--- a/BaseLib/FileTools.cpp
+++ b/BaseLib/FileTools.cpp
@@ -62,19 +62,6 @@ double swapEndianness(double const& v)
     return b.v;
 }
 
-namespace
-{
-
-/** Finds the position of last dot.
- * This could be used to extract file extension.
- */
-
-std::string::size_type findLastDot(std::string const& path)
-{
-    return path.find_last_of('.');
-}
-} // end namespace
-
 std::string dropFileExtension(std::string const& filename)
 {
     auto const filename_path = fs::path(filename);
@@ -94,13 +81,7 @@ std::string extractBaseNameWithoutExtension(std::string const& pathname)
 
 std::string getFileExtension(const std::string &path)
 {
-    const std::string str = extractBaseName(path);
-    auto const p = findLastDot(str);
-    if (p == std::string::npos)
-    {
-        return std::string();
-    }
-    return str.substr(p + 1);
+    return fs::path(path).extension();
 }
 
 bool hasFileExtension(std::string const& extension, std::string const& filename)
@@ -108,13 +89,6 @@ bool hasFileExtension(std::string const& extension, std::string const& filename)
     return boost::iequals(extension, getFileExtension(filename));
 }
 
-static const char pathSeparator =
-#ifdef _WIN32
-                            '\\';
-#else
-                            '/';
-#endif
-
 std::string extractPath(std::string const& pathname)
 {
     return fs::path(pathname).parent_path();
diff --git a/MeshLib/IO/VtkIO/VtuInterface.cpp b/MeshLib/IO/VtkIO/VtuInterface.cpp
index e7c26b0eafc..6b958a75f44 100644
--- a/MeshLib/IO/VtkIO/VtuInterface.cpp
+++ b/MeshLib/IO/VtkIO/VtuInterface.cpp
@@ -77,7 +77,7 @@ std::string getVtuFileNameForPetscOutputWithoutExtension(
     std::string const& file_name)
 {
     auto const file_name_extension = BaseLib::getFileExtension(file_name);
-    if (file_name_extension != "vtu")
+    if (file_name_extension != ".vtu")
     {
         OGS_FATAL("Expected a .vtu file for petsc output.");
     }
diff --git a/MeshLib/IO/readMeshFromFile.cpp b/MeshLib/IO/readMeshFromFile.cpp
index b211aa66a83..5b2f94aa849 100644
--- a/MeshLib/IO/readMeshFromFile.cpp
+++ b/MeshLib/IO/readMeshFromFile.cpp
@@ -69,13 +69,13 @@ MeshLib::Mesh* readMeshFromFile(const std::string &file_name)
 
 MeshLib::Mesh* readMeshFromFileSerial(const std::string &file_name)
 {
-    if (BaseLib::hasFileExtension("msh", file_name))
+    if (BaseLib::hasFileExtension(".msh", file_name))
     {
         MeshLib::IO::Legacy::MeshIO meshIO;
         return meshIO.loadMeshFromFile(file_name);
     }
 
-    if (BaseLib::hasFileExtension("vtu", file_name))
+    if (BaseLib::hasFileExtension(".vtu", file_name))
     {
         return MeshLib::IO::VtuInterface::readVTUFile(file_name);
     }
diff --git a/MeshLib/IO/writeMeshToFile.cpp b/MeshLib/IO/writeMeshToFile.cpp
index ea54d209e6e..debc78c3bd7 100644
--- a/MeshLib/IO/writeMeshToFile.cpp
+++ b/MeshLib/IO/writeMeshToFile.cpp
@@ -25,14 +25,14 @@ namespace IO
 {
 int writeMeshToFile(const MeshLib::Mesh &mesh, const std::string &file_name)
 {
-    if (BaseLib::hasFileExtension("msh", file_name))
+    if (BaseLib::hasFileExtension(".msh", file_name))
     {
         MeshLib::IO::Legacy::MeshIO meshIO;
         meshIO.setMesh(&mesh);
         meshIO.writeToFile(file_name);
         return 0;
     }
-    if (BaseLib::hasFileExtension("vtu", file_name))
+    if (BaseLib::hasFileExtension(".vtu", file_name))
     {
         MeshLib::IO::VtuInterface writer(&mesh);
         auto const result = writer.writeToFile(file_name);
diff --git a/Tests/BaseLib/TestFilePathStringManipulation.cpp b/Tests/BaseLib/TestFilePathStringManipulation.cpp
deleted file mode 100644
index 159781419ff..00000000000
--- a/Tests/BaseLib/TestFilePathStringManipulation.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-/**
- * \file
- * \author
- * \date
- * \brief
- *
- * \copyright
- * Copyright (c) 2012-2020, OpenGeoSys Community (http://www.opengeosys.org)
- *            Distributed under a Modified BSD License.
- *              See accompanying file LICENSE.txt or
- *              http://www.opengeosys.org/project/license
- */
-
-#include "gtest/gtest.h"
-
-#include "BaseLib/FileTools.h"
-
-#ifdef WIN32
-TEST(BaseLib, GetFileExtensionWin)
-{
-    ASSERT_EQ ( BaseLib::getFileExtension("file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path\\"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path\\file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\path\\file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\path\\path\\"), "" );
-
-    ASSERT_EQ ( BaseLib::getFileExtension("file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path.ext\\"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path.ext\\"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\path\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path\\path\\path.ext\\"), "" );
-
-    ASSERT_EQ ( BaseLib::getFileExtension("path.wrong\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path.wrong\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path.wrong0\\path.wrong\\file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("\\path.wrong0\\path.wrong\\path.ext\\"), "" );
-}
-#else
-TEST(BaseLib, getFileExtensionUnix)
-{
-    ASSERT_EQ ( BaseLib::getFileExtension("file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path/"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path/file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/path/file"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/path/path/"), "" );
-
-    ASSERT_EQ ( BaseLib::getFileExtension("file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path.ext/"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path.ext/"), "" );
-    ASSERT_EQ ( BaseLib::getFileExtension("path/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/path/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path/path/path.ext/"), "" );
-
-    ASSERT_EQ ( BaseLib::getFileExtension("path.wrong/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path.wrong/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path.wrong0/path.wrong/file.ext"), "ext" );
-    ASSERT_EQ ( BaseLib::getFileExtension("/path.wrong0/path.wrong/path.ext/"), "" );
-}
-#endif
-
-#ifdef WIN32
-TEST(BaseLib, HasFileExtensionWin)
-{
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path\\"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path\\"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path\\file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path\\file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path\\path\\file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path\\path\\path\\"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path.ext\\"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path.ext\\"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "\\path\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "\\path\\path\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path\\path\\path.ext\\"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path.wrong\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "\\path.wrong\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "\\path.wrong0\\path.wrong\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "\\path.wrong0\\path.wrong\\path.ext\\"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("Ext", "file.exT"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "path\\file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "path\\file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path\\file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("Ext", "path\\file.exT"));
-}
-#else
-TEST(BaseLib, HasFileExtensionUnix)
-{
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path/"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path/"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path/file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path/file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path/path/file"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path/path/path/"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "path.ext/"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path.ext/"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "/path/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "/path/path/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path/path/path.ext/"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path.wrong/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "/path.wrong/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "/path.wrong0/path.wrong/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("", "/path.wrong0/path.wrong/path.ext/"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("Ext", "file.exT"));
-
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "path/file.ext"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("EXT", "path/file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("ext", "path/file.EXT"));
-    ASSERT_TRUE ( BaseLib::hasFileExtension("Ext", "path/file.exT"));
-}
-#endif
diff --git a/Tests/FileIO/TestTetGenInterface.cpp b/Tests/FileIO/TestTetGenInterface.cpp
index 57ab6981516..ef995e9a70d 100644
--- a/Tests/FileIO/TestTetGenInterface.cpp
+++ b/Tests/FileIO/TestTetGenInterface.cpp
@@ -54,6 +54,7 @@ TEST(FileIO, DISABLED_TetGenSmeshInterface)
 {
     std::string const file_name (TestInfoLib::TestInfo::data_path + "/FileIO/AmmerSubsurfaceCoarse.vtu");
     std::unique_ptr<MeshLib::Mesh const> const mesh (MeshLib::IO::readMeshFromFile(file_name));
+    ASSERT_NE(mesh, nullptr);
 
     std::string const tg_new_name (BaseLib::randomString(32));
     std::string const output_name =
-- 
GitLab