6#include <userver/components/impl/component_base.hpp>
7#include <userver/testsuite/cache_control.hpp>
8#include <userver/testsuite/dump_control.hpp>
9#include <userver/testsuite/grpc_control.hpp>
10#include <userver/testsuite/http_allowed_urls_extra.hpp>
11#include <userver/testsuite/periodic_task_control.hpp>
12#include <userver/testsuite/postgres_control.hpp>
13#include <userver/testsuite/redis_control.hpp>
14#include <userver/testsuite/testpoint_control.hpp>
16USERVER_NAMESPACE_BEGIN
53class TestsuiteSupport
final :
public components::impl::ComponentBase {
59 TestsuiteSupport(
const components::ComponentConfig& component_config,
60 const components::ComponentContext& component_context);
61 ~TestsuiteSupport()
override;
63 testsuite::CacheControl& GetCacheControl();
65 testsuite::PeriodicTaskControl& GetPeriodicTaskControl();
66 testsuite::TestpointControl& GetTestpointControl();
69 testsuite::TestsuiteTasks& GetTestsuiteTasks();
70 testsuite::HttpAllowedUrlsExtra& GetHttpAllowedUrlsExtra();
80 void OnAllComponentsAreStopping()
override;
82 const std::chrono::milliseconds increased_timeout_;
85 testsuite::PeriodicTaskControl periodic_task_control_;
86 testsuite::TestpointControl testpoint_control_;
89 std::unique_ptr<testsuite::TestsuiteTasks> testsuite_tasks_;
90 testsuite::HttpAllowedUrlsExtra http_allowed_urls_extra_;
95inline constexpr bool kHasValidate<TestsuiteSupport> =
true;