Compare commits

..

1 commit

Author SHA1 Message Date
Anton
4ad3045c1b Successful Connect() with proxy
Some checks failed
PR Check / on-push-commit-check (push) Has been cancelled
2024-11-26 18:34:49 +03:00

View file

@ -10,8 +10,8 @@ namespace asio = boost::asio;
class ProxyTest : public ::testing::Test {
protected:
boost::asio::io_context io_context;
larra::xmpp::impl::MockSocket mock_socket{io_context.get_executor()};
boost::asio::io_context io;
larra::xmpp::impl::MockSocket mockSocket{io.get_executor()};
};
// Test 1: Connect via HTTP proxy with successful server response
@ -26,15 +26,15 @@ TEST_F(ProxyTest, ConnectViaHttpProxy_SuccessfulResponse) {
std::string proxyResponse = "HTTP/1.1 200 Connection established\r\n\r\n";
mock_socket.AddReceivedData(proxyResponse);
mockSocket.AddReceivedData(proxyResponse);
bool connectSuccessful = false;
asio::co_spawn(
io_context,
io,
[&]() -> asio::awaitable<void> {
try {
co_await client::impl::ConnectViaProxy(mock_socket, proxy, targetHost, targetPort);
co_await client::impl::ConnectViaProxy(mockSocket, proxy, targetHost, targetPort);
connectSuccessful = true;
} catch(...) {
connectSuccessful = false;
@ -42,9 +42,9 @@ TEST_F(ProxyTest, ConnectViaHttpProxy_SuccessfulResponse) {
},
asio::detached);
io_context.run();
io.run();
std::string sentData = mock_socket.GetSentData();
std::string sentData = mockSocket.GetSentData();
EXPECT_EQ(sentData, expectedRequest);
EXPECT_TRUE(connectSuccessful);
@ -99,11 +99,11 @@ TEST(Socks5ProxyTest, ConnectViaProxy) {
expectedRequest[reqLen++] = static_cast<std::uint8_t>(networkOrderPort & 0xFF);
std::string expectedData = expectedGreeting;
auto transformed_view = expectedRequest | std::views::take(reqLen) | std::views::transform([](std::uint8_t byte) {
return static_cast<char>(byte);
});
auto transformedView = expectedRequest | std::views::take(reqLen) | std::views::transform([](std::uint8_t byte) {
return static_cast<char>(byte);
});
expectedData.append(std::ranges::to<std::string>(transformed_view));
expectedData.append(std::ranges::to<std::string>(transformedView));
EXPECT_EQ(sentData, expectedData);
co_return;