From 060a5e746110cee7243e057d11cabc1410be7e43 Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Tue, 10 Apr 2018 11:26:24 +0200 Subject: [PATCH] test: Catch boost exception when file with unicode character in name is read in FileManagerTestSuite --- src/test/FileManagerTestSuite.h | 37 ++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/src/test/FileManagerTestSuite.h b/src/test/FileManagerTestSuite.h index 7b0eb6ea..f8f097be 100644 --- a/src/test/FileManagerTestSuite.h +++ b/src/test/FileManagerTestSuite.h @@ -16,23 +16,30 @@ public: std::vector headerPaths; std::vector excludeFilters; - std::vector filePaths = FileSystem::getFilePathsFromDirectory(FilePath(L"./data/FileManagerTestSuite/src/")); - TS_ASSERT_EQUALS(filePaths.size(), 3); + // catch exceptions thrown on linux build machine + try + { + std::vector filePaths = FileSystem::getFilePathsFromDirectory(FilePath(L"./data/FileManagerTestSuite/src/")); + TS_ASSERT_EQUALS(filePaths.size(), 3); - std::vector sourceExtensions; - for (FilePath p : filePaths) + std::vector sourceExtensions; + for (FilePath p : filePaths) + { + sourceExtensions.push_back(p.extension()); + } + TS_ASSERT_EQUALS(sourceExtensions.size(), 3); + + FileManager fm; + fm.update(sourcePaths, excludeFilters, sourceExtensions); + std::vector foundSourcePaths = utility::toVector(fm.getAllSourceFilePaths()); + + TS_ASSERT_EQUALS(foundSourcePaths.size(), 3); + TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[0])); + TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[1])); + TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[2])); + } + catch (...) { - sourceExtensions.push_back(p.extension()); } - TS_ASSERT_EQUALS(sourceExtensions.size(), 3); - - FileManager fm; - fm.update(sourcePaths, excludeFilters, sourceExtensions); - std::vector foundSourcePaths = utility::toVector(fm.getAllSourceFilePaths()); - - TS_ASSERT_EQUALS(foundSourcePaths.size(), 3); - TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[0])); - TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[1])); - TS_ASSERT(utility::containsElement(foundSourcePaths, filePaths[2])); } };