Files
transmission/tests/libtransmission/error-test.cc
Charles Kerr 8dea0e863f fix: several CI errors (#8124)
* Revert "build(cmake): support building with (almost) all system 3rd-party libraries (#7554)"

This reverts commit a89ca4f2c9.

* fixup! refactor: use a map of getters, setters for `session_get` and `session_set` properties (#8024)

fix: capture-by-reference error in session_accessors()

* fix: 'Qt depends on a UTF-8 locale' CI warning

* fix: 'qt.qpa.xcb: could not connect to display' CI error
2026-01-13 13:16:40 -06:00

38 lines
977 B
C++

// This file Copyright (C) 2013-2022 Mnemosyne LLC.
// It may be used under GPLv2 (SPDX: GPL-2.0-only), GPLv3 (SPDX: GPL-3.0-only),
// or any future license endorsed by Mnemosyne LLC.
// License text can be found in the licenses/ folder.
#include <string_view>
#include <libtransmission/error.h>
#include "test-fixtures.h"
#include "gtest/gtest.h"
using namespace std::literals;
TEST(Error, errorSet)
{
auto error = tr_error{};
EXPECT_FALSE(error) << error;
EXPECT_FALSE(error.has_value()) << error;
error.set(2, "oops"sv);
EXPECT_TRUE(error);
EXPECT_TRUE(error.has_value()) << error;
EXPECT_EQ(2, error.code());
EXPECT_EQ("oops"sv, error.message());
error.prefix_message("error: ");
EXPECT_TRUE(error);
EXPECT_TRUE(error.has_value()) << error;
EXPECT_EQ(2, error.code());
EXPECT_EQ("error: oops"sv, error.message());
error = {};
EXPECT_FALSE(error) << error;
EXPECT_FALSE(error.has_value()) << error;
}