From 75a3572fdd3149ee4beba3938a366ab9199bc37d Mon Sep 17 00:00:00 2001 From: Danny Robson Date: Mon, 13 Aug 2018 16:12:11 +1000 Subject: [PATCH] exe: defend test case against msys2 paths --- test/exe.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/test/exe.cpp b/test/exe.cpp index bb0482dc..43be913c 100644 --- a/test/exe.cpp +++ b/test/exe.cpp @@ -2,6 +2,8 @@ #include "../exe.hpp" +#include + /////////////////////////////////////////////////////////////////////////////// int @@ -9,7 +11,19 @@ main (int, char **argv) { cruft::TAP::logger tap; - auto path = cruft::image_path (); - tap.expect_eq (path, argv[0], "identify executable path"); + // we'd like to compare based on the total path, but systems like msys2 + // have varying styles of paths and it's difficult to harmonize the + // expected and queried values. + // + // so we compare the filename instead under the assumption that it should + // be stable across path styles. + auto const query = cruft::image_path (); + auto const truth = std::experimental::filesystem::path (argv[0]); + tap.expect_eq ( + query.stem (), + truth.stem (), + "identify executable path # %!", query + ); + return tap.status (); }