6#include <userver/components/raw_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::RawComponentBase {
60 const components::ComponentConfig& component_config,
61 const components::ComponentContext& component_context
63 ~TestsuiteSupport() override;
65 testsuite::CacheControl& GetCacheControl();
66 testsuite::DumpControl& GetDumpControl();
67 testsuite::PeriodicTaskControl& GetPeriodicTaskControl();
68 testsuite::TestpointControl& GetTestpointControl();
71 testsuite::TestsuiteTasks& GetTestsuiteTasks();
72 testsuite::HttpAllowedUrlsExtra& GetHttpAllowedUrlsExtra();
82 void OnAllComponentsAreStopping() override;
84 const std::chrono::milliseconds increased_timeout_;
85 testsuite::CacheControl cache_control_;
86 testsuite::DumpControl dump_control_;
87 testsuite::PeriodicTaskControl periodic_task_control_;
88 testsuite::TestpointControl testpoint_control_;
91 std::unique_ptr<testsuite::TestsuiteTasks> testsuite_tasks_;
92 testsuite::HttpAllowedUrlsExtra http_allowed_urls_extra_;