File: test_result.cc

package info (click to toggle)
xgboost 3.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 13,796 kB
  • sloc: cpp: 67,502; python: 35,503; java: 4,676; ansic: 1,426; sh: 1,320; xml: 1,197; makefile: 204; javascript: 19
file content (31 lines) | stat: -rw-r--r-- 899 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/**
 *  Copyright 2024, XGBoost Contributors
 */
#include <gtest/gtest.h>
#include <xgboost/collective/result.h>

namespace xgboost::collective {
TEST(Result, Concat) {
  auto rc0 = Fail("foo");
  auto rc1 = Fail("bar");
  auto rc = std::move(rc0) + std::move(rc1);
  ASSERT_NE(rc.Report().find("foo"), std::string::npos);
  ASSERT_NE(rc.Report().find("bar"), std::string::npos);

  auto rc2 = Fail("Another", std::move(rc));
  auto assert_that = [](Result const& rc) {
    ASSERT_NE(rc.Report().find("Another"), std::string::npos);
    ASSERT_NE(rc.Report().find("foo"), std::string::npos);
    ASSERT_NE(rc.Report().find("bar"), std::string::npos);
  };
  assert_that(rc2);

  auto empty = Success();
  auto rc3 = std::move(empty) + std::move(rc2);
  assert_that(rc3);

  empty = Success();
  auto rc4 = std::move(rc3) + std::move(empty);
  assert_that(rc4);
}
}  // namespace xgboost::collective