/** * Copyright 2023 by XGBoost contributors */ #include #include // for Context #include // for ObjInfo #include // for TreeUpdater #include // for unique_ptr namespace xgboost { TEST(Updater, HasNodePosition) { Context ctx; ObjInfo task{ObjInfo::kRegression, true, true}; std::unique_ptr up{TreeUpdater::Create("grow_histmaker", &ctx, &task)}; ASSERT_TRUE(up->HasNodePosition()); up.reset(TreeUpdater::Create("grow_quantile_histmaker", &ctx, &task)); ASSERT_TRUE(up->HasNodePosition()); #if defined(XGBOOST_USE_CUDA) || defined(XGBOOST_USE_HIP) ctx.gpu_id = 0; up.reset(TreeUpdater::Create("grow_gpu_hist", &ctx, &task)); ASSERT_TRUE(up->HasNodePosition()); #endif // defined(XGBOOST_USE_CUDA) || defined(XGBOOST_USE_HIP) } } // namespace xgboost