/proc/self/cwd/test/mocks/upstream/thread_local_cluster.h
Line | Count | Source (jump to first uncovered line) |
1 | | #pragma once |
2 | | |
3 | | #include "envoy/upstream/thread_local_cluster.h" |
4 | | |
5 | | #include "test/mocks/http/conn_pool.h" |
6 | | #include "test/mocks/http/mocks.h" |
7 | | #include "test/mocks/tcp/mocks.h" |
8 | | |
9 | | #include "cluster_priority_set.h" |
10 | | #include "gmock/gmock.h" |
11 | | #include "gtest/gtest.h" |
12 | | #include "load_balancer.h" |
13 | | |
14 | | using ::testing::NiceMock; |
15 | | |
16 | | namespace Envoy { |
17 | | namespace Upstream { |
18 | | |
19 | | class MockThreadLocalCluster : public ThreadLocalCluster { |
20 | | public: |
21 | | MockThreadLocalCluster(); |
22 | | ~MockThreadLocalCluster() override; |
23 | | |
24 | 0 | Host::CreateConnectionData tcpConn(LoadBalancerContext* context) override { |
25 | 0 | MockHost::MockCreateConnectionData data = tcpConn_(context); |
26 | 0 | return {Network::ClientConnectionPtr{data.connection_}, data.host_description_}; |
27 | 0 | } |
28 | | |
29 | | // Upstream::ThreadLocalCluster |
30 | | MOCK_METHOD(const PrioritySet&, prioritySet, ()); |
31 | | MOCK_METHOD(ClusterInfoConstSharedPtr, info, ()); |
32 | | MOCK_METHOD(LoadBalancer&, loadBalancer, ()); |
33 | | MOCK_METHOD(absl::optional<HttpPoolData>, httpConnPool, |
34 | | (ResourcePriority priority, absl::optional<Http::Protocol> downstream_protocol, |
35 | | LoadBalancerContext* context)); |
36 | | MOCK_METHOD(absl::optional<TcpPoolData>, tcpConnPool, |
37 | | (ResourcePriority priority, LoadBalancerContext* context)); |
38 | | MOCK_METHOD(MockHost::MockCreateConnectionData, tcpConn_, (LoadBalancerContext * context)); |
39 | | MOCK_METHOD(Http::AsyncClient&, httpAsyncClient, ()); |
40 | | MOCK_METHOD(Tcp::AsyncTcpClientPtr, tcpAsyncClient, |
41 | | (LoadBalancerContext * context, Tcp::AsyncTcpClientOptionsConstSharedPtr options)); |
42 | | |
43 | | NiceMock<MockClusterMockPrioritySet> cluster_; |
44 | | NiceMock<MockLoadBalancer> lb_; |
45 | | NiceMock<Http::ConnectionPool::MockInstance> conn_pool_; |
46 | | NiceMock<Http::MockAsyncClient> async_client_; |
47 | | NiceMock<Tcp::ConnectionPool::MockInstance> tcp_conn_pool_; |
48 | | }; |
49 | | |
50 | | } // namespace Upstream |
51 | | } // namespace Envoy |