MCPcopy Create free account
hub / github.com/dmlc/xgboost / TEST

Function TEST

tests/cpp/common/test_version.cc:16–59  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

14
15namespace xgboost {
16TEST(Version, Basic) {
17 Json j_ver { Object() };
18 Version::Save(&j_ver);
19 auto triplet { Version::Load(j_ver) };
20 ASSERT_TRUE(Version::Same(triplet));
21
22 common::TemporaryDirectory tempdir;
23 const std::string fname = tempdir.Str() + "/version";
24
25 {
26 std::unique_ptr<dmlc::Stream> fo(dmlc::Stream::Create(fname.c_str(), "w"));
27 Version::Save(fo.get());
28 }
29
30 {
31 std::unique_ptr<dmlc::Stream> fi(dmlc::Stream::Create(fname.c_str(), "r"));
32 auto triplet { Version::Load(fi.get())};;
33 ASSERT_TRUE(Version::Same(triplet));
34 }
35
36 std::string str { Version::String(triplet) };
37
38 size_t ptr {0};
39 XGBoostVersionT v {0};
40 v = std::stoi(str, &ptr);
41 ASSERT_EQ(str.at(ptr), '.');
42 ASSERT_EQ(v, XGBOOST_VER_MAJOR) << "major: " << v;
43
44 str = str.substr(ptr+1);
45
46 ptr = 0;
47 v = std::stoi(str, &ptr);
48 ASSERT_EQ(str.at(ptr), '.');
49 ASSERT_EQ(v, XGBOOST_VER_MINOR) << "minor: " << v;;
50
51 str = str.substr(ptr+1);
52
53 ptr = 0;
54 v = std::stoi(str, &ptr);
55 ASSERT_EQ(v, XGBOOST_VER_PATCH) << "patch: " << v;;
56
57 str = str.substr(ptr);
58 ASSERT_EQ(str.size(), 0);
59}
60} // namespace xgboost

Callers

nothing calls this directly

Calls 5

c_strMethod · 0.80
substrMethod · 0.80
StrMethod · 0.45
getMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected