Make gtest-extra-test more portable

This commit is contained in:
Victor Zverovich 2023-11-24 10:09:21 -08:00
parent bea7ecc710
commit ffa5b14fe3
3 changed files with 4 additions and 4 deletions

View File

@ -354,7 +354,7 @@ TEST(output_redirect_test, dup_error_in_ctor) {
FMT_POSIX(close(fd));
std::unique_ptr<output_redirect> redir{nullptr};
EXPECT_SYSTEM_ERROR_NOASSERT(
redir.reset(new output_redirect(f.get())), EBADF,
redir.reset(new output_redirect(f.get(), false)), EBADF,
fmt::format("cannot duplicate file descriptor {}", fd));
copy.dup2(fd); // "undo" close or dtor will fail
}

View File

@ -11,8 +11,8 @@
using fmt::file;
output_redirect::output_redirect(FILE* f) : file_(f) {
flush();
output_redirect::output_redirect(FILE* f, bool flush) : file_(f) {
if (flush) this->flush();
int fd = FMT_POSIX(fileno(f));
// Create a file object referring to the original file.
original_ = file::dup(fd);

View File

@ -77,7 +77,7 @@ class output_redirect {
void restore();
public:
explicit output_redirect(FILE* file);
explicit output_redirect(FILE* file, bool flush = true);
~output_redirect() noexcept;
output_redirect(const output_redirect&) = delete;