diff --git a/test/extensions/filters/network/mysql_proxy/BUILD b/test/extensions/filters/network/mysql_proxy/BUILD index 83de3454e009b..19b3d8dfc605d 100644 --- a/test/extensions/filters/network/mysql_proxy/BUILD +++ b/test/extensions/filters/network/mysql_proxy/BUILD @@ -49,28 +49,24 @@ envoy_extension_cc_test( ], ) -# See https://github.com/envoyproxy/envoy/issues/6162. -# -# TODO(venilnoronha, #6162): uncomment this once this works on all platforms. -# -# envoy_extension_cc_test( -# name = "mysql_integration_test", -# srcs = [ -# "mysql_integration_test.cc", -# ], -# data = [ -# "mysql_test_config.yaml", -# ], -# extension_name = "envoy.filters.network.mysql_proxy", -# deps = [ -# ":mysql_test_utils_lib", -# "//source/common/tcp_proxy", -# "//source/extensions/filters/network/mysql_proxy:config", -# "//source/extensions/filters/network/mysql_proxy:proxy_lib", -# "//source/extensions/filters/network/tcp_proxy:config", -# "//test/integration:integration_lib", -# ], -# ) +envoy_extension_cc_test( + name = "mysql_integration_test", + srcs = [ + "mysql_integration_test.cc", + ], + data = [ + "mysql_test_config.yaml", + ], + extension_name = "envoy.filters.network.mysql_proxy", + deps = [ + ":mysql_test_utils_lib", + "//source/common/tcp_proxy", + "//source/extensions/filters/network/mysql_proxy:config", + "//source/extensions/filters/network/mysql_proxy:proxy_lib", + "//source/extensions/filters/network/tcp_proxy:config", + "//test/integration:integration_lib", + ], +) envoy_extension_cc_test( name = "mysql_command_tests", diff --git a/test/extensions/filters/network/mysql_proxy/mysql_integration_test.cc b/test/extensions/filters/network/mysql_proxy/mysql_integration_test.cc index 0a0e713473855..7fbd4fa8270e2 100644 --- a/test/extensions/filters/network/mysql_proxy/mysql_integration_test.cc +++ b/test/extensions/filters/network/mysql_proxy/mysql_integration_test.cc @@ -30,8 +30,11 @@ class MySQLIntegrationTest : public testing::TestWithParamwrite(greeting)); - tcp_client->waitForData(str); + + str.append(greeting); + tcp_client->waitForData(str, true); // Client username/password and capabilities std::string login = encodeClientLogin(MYSQL_CLIENT_CAPAB_41VS320, user, CHALLENGE_SEQ_NUM); @@ -97,7 +102,9 @@ TEST_P(MySQLIntegrationTest, MysqLoginTest) { // Server response OK to username/password std::string loginok = encodeClientLoginResp(MYSQL_RESP_OK); ASSERT_TRUE(fake_upstream_connection->write(loginok)); - tcp_client->waitForData(str); + + str.append(loginok); + tcp_client->waitForData(str, true); tcp_client->close(); ASSERT_TRUE(fake_upstream_connection->waitForDisconnect()); @@ -116,9 +123,9 @@ TEST_P(MySQLIntegrationTest, MysqLoginTest) { TEST_P(MySQLIntegrationTest, MySQLUnitTestMultiClientsLoop) { int idx; std::string rcvd_data; - std::string str; for (idx = 0; idx < CLIENT_NUM; idx++) { + std::string str; std::string user("user"); user.append(std::to_string(idx)); @@ -129,7 +136,9 @@ TEST_P(MySQLIntegrationTest, MySQLUnitTestMultiClientsLoop) { // greeting std::string greeting = encodeServerGreeting(MYSQL_PROTOCOL_10); ASSERT_TRUE(fake_upstream_connection->write(greeting)); - tcp_client->waitForData(str); + + str.append(greeting); + tcp_client->waitForData(str, true); // Client username/password and capabilities std::string login = encodeClientLogin(MYSQL_CLIENT_CAPAB_41VS320, user, CHALLENGE_SEQ_NUM); @@ -140,7 +149,9 @@ TEST_P(MySQLIntegrationTest, MySQLUnitTestMultiClientsLoop) { // Server response OK to username/password std::string loginok = encodeClientLoginResp(MYSQL_RESP_OK); ASSERT_TRUE(fake_upstream_connection->write(loginok)); - tcp_client->waitForData(str); + + str.append(loginok); + tcp_client->waitForData(str, true); tcp_client->close(); ASSERT_TRUE(fake_upstream_connection->waitForDisconnect()); diff --git a/test/extensions/filters/network/mysql_proxy/mysql_test_config.yaml b/test/extensions/filters/network/mysql_proxy/mysql_test_config.yaml index 9d6560c2177ba..b58c3777a29b1 100644 --- a/test/extensions/filters/network/mysql_proxy/mysql_test_config.yaml +++ b/test/extensions/filters/network/mysql_proxy/mysql_test_config.yaml @@ -2,7 +2,7 @@ admin: access_log_path: /dev/null address: socket_address: - address: 127.0.0.1 + address: "{}" port_value: 0 static_resources: clusters: @@ -15,13 +15,13 @@ static_resources: - endpoint: address: socket_address: - address: 127.0.0.1 + address: "{}" port_value: 0 listeners: name: listener_0 address: socket_address: - address: 0.0.0.0 + address: "{}" port_value: 0 filter_chains: - filters: