forked from envoyproxy/envoy
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbase_overload_integration_test.h
More file actions
30 lines (23 loc) · 957 Bytes
/
base_overload_integration_test.h
File metadata and controls
30 lines (23 loc) · 957 Bytes
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
#pragma once
#include "envoy/config/bootstrap/v3/bootstrap.pb.h"
#include "envoy/config/overload/v3/overload.pb.h"
#include "test/integration/fake_resource_monitor.h"
#include "test/test_common/registry.h"
namespace Envoy {
class BaseOverloadIntegrationTest {
protected:
void
setupOverloadManagerConfig(const envoy::config::overload::v3::OverloadAction& overload_action);
void
setupOverloadManagerConfig(const envoy::config::overload::v3::LoadShedPoint& load_shed_point);
void updateResource(double pressure) {
auto* monitor = fake_resource_monitor_factory_.monitor();
ASSERT(monitor != nullptr);
monitor->setResourcePressure(pressure);
}
envoy::config::overload::v3::OverloadManager overload_manager_config_;
FakeResourceMonitorFactory fake_resource_monitor_factory_;
Registry::InjectFactory<Server::Configuration::ResourceMonitorFactory> inject_factory_{
fake_resource_monitor_factory_};
};
} // namespace Envoy