-
Notifications
You must be signed in to change notification settings - Fork 85
Add Java Quic Test Server #1870
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from 22 commits
Commits
Show all changes
41 commits
Select commit
Hold shift + click to select a range
6e5fca3
Fix url 404 not found error
colibie 51bab1c
Working version of quicTestServer
colibie 15cfb05
remove traces of argc and argv
colibie 91e1af8
[WIP] create quicTestServerTest
colibie a49baf9
[WIP] quicTestServerTest
colibie c608e2e
[WIP] checkpoint
colibie 22bc6bb
Merge branch 'main' of github.com:colibie/envoy-mobile into java/quic…
colibie cec798e
Merge branch 'main' of github.com:colibie/envoy-mobile into java/quic…
colibie 1e98c4d
move submodule to latest commit in main
colibie 8a6208f
added direct response to test engine
colibie bc01022
Merge branch 'main' of github.com:colibie/envoy-mobile into java/quic…
colibie 189e3e9
WIP
colibie 7511986
[wip]
colibie 2b61716
add JVM test for the QuicTestServer
colibie 75f52ef
wip
colibie 9004b8c
add QuicTestServer and its associated test
colibie 32401c4
Merge branch 'main' of github.com:colibie/envoy-mobile into java/quic…
colibie 4864676
checkout to correct envoy version
colibie 69983dd
Fix thread issue
colibie 0789bec
Fix thread issue
colibie c6ef82a
nit fixes
colibie 7aca613
add linux jni header and nit changes
colibie 79819e2
add linux jni header and nit changes
colibie ad9170b
testing
colibie d09958c
fix PR comments and check test asan build
colibie 4123d56
ci test
colibie cb3e22b
ci testing
colibie 9836d38
reverting cc_binary changes
colibie 05c30c8
Merge branch 'main' of github.com:colibie/envoy-mobile into java/quic…
colibie 03c2053
pull in updates
colibie 274aae7
fix format issues
colibie 4bc0fd9
potential fix for mac timeouts
colibie f6e5b72
should fix failures
colibie 34c70be
testonly field added to genrule
colibie 5b6dd43
add binary jnilib to dep
colibie 02fd58f
Kick CI
colibie 701395b
remove redundancies
colibie f1a9a75
some more cleanup
colibie 3b40d92
Merge remote-tracking branch 'origin' into java/quicTestServer
colibie 1fae837
Kick CI
colibie 71748ef
[WIP] mac not working yet
colibie File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,117 @@ | ||
| #include "quic_test_server.h" | ||
|
|
||
| namespace Envoy { | ||
|
|
||
| Network::TransportSocketFactoryPtr QuicTestServer::createUpstreamTlsContext( | ||
| testing::NiceMock<Server::Configuration::MockTransportSocketFactoryContext>& factory_context) { | ||
| envoy::extensions::transport_sockets::tls::v3::DownstreamTlsContext tls_context; | ||
| Extensions::TransportSockets::Tls::ContextManagerImpl context_manager{time_system_}; | ||
|
|
||
| const std::string yaml = absl::StrFormat( | ||
| R"EOF( | ||
| common_tls_context: | ||
| alpn_protocols: h3 | ||
| tls_certificates: | ||
| - certificate_chain: | ||
| inline_string: | | ||
| -----BEGIN CERTIFICATE----- | ||
| MIIEPjCCAyagAwIBAgIUEuy1WgSCzX6mojPirk7Th6uhNHowDQYJKoZIhvcNAQEL | ||
| BQAwfzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcM | ||
| DVNhbiBGcmFuY2lzY28xDTALBgNVBAoMBEx5ZnQxGTAXBgNVBAsMEEx5ZnQgRW5n | ||
| aW5lZXJpbmcxGTAXBgNVBAMMEFRlc3QgVXBzdHJlYW0gQ0EwHhcNMjAwODA1MTkx | ||
| NjAyWhcNMjIwODA1MTkxNjAyWjCBgzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNh | ||
| bGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xDTALBgNVBAoMBEx5ZnQx | ||
| GTAXBgNVBAsMEEx5ZnQgRW5naW5lZXJpbmcxHTAbBgNVBAMMFFRlc3QgVXBzdHJl | ||
| YW0gU2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtpiYA4/I | ||
| NuflkPe4L/GTslmngNQUCo8TzPXG0gt7uoxr4FeuVy7AaD28S2/hwhbl+bDtHTQY | ||
| mvBUwNMsYzpND2eQ3sSIumdeLzBEKP2mnnZ9gE/Zd2TIuZl686RpDq0B6ZdZSpCu | ||
| bqQmmPFLiRNH8JViJZMN5yqMt7T5oq+DnCYQZllqmpAwd6NnhKALrYmZ87oqc0zh | ||
| kf+5amP7zMYKkwQuRwcx4QPZkEp3+qhszolpAJ52dFGJ+pLuUVDg0Gf0cnxLjFKc | ||
| 6vcTlj4tsymR4ci58MHRt4EdGdhShw0oaj67gRRfU4Vj61I2ZAVH07kL0mjO2TZT | ||
| EKrOEJJ7/dtxdwIDAQABo4GsMIGpMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgXg | ||
| MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAtBgNVHREEJjAkggoqLmx5 | ||
| ZnQuY29thwR/AAABhxAAAAAAAAAAAAAAAAAAAAABMB0GA1UdDgQWBBQeoC5wxwX5 | ||
| k3ggIN/844/6jKx9czAfBgNVHSMEGDAWgBQ7Zh1TopMm7SY1RCOEO8L1G8IAZDAN | ||
| BgkqhkiG9w0BAQsFAAOCAQEA18wEg8LnPm99cIouFUFMAO+BpiY2KVa9Bu6x07m9 | ||
| quNFv7/4mLt87sk/umD3LH/tDjqW0D84vhG9a+0yDq7ZrD/P5eK3R+yBINwhe4/x | ||
| obJlThEsbcZF1FkMnq1rt53izukyQLLQwoVxidQl3HCg3hosWmpH1VBPgwoize6V | ||
| aAhKLW0n+JSfIE1d80nvZdYlHuCnS6UhLmAbTBCnwT0aGTfzT0Dd4KlYiY8vGZRu | ||
| tXOw4MzKtJcOL3t7Zpz2mhqN25dyiuyvKEhLXdx48aemwa2t6ISfFKsd0/glnNe/ | ||
| PFZMakzKv1G0xLGURjsInCZ0kePAmerfZN6CBZDo4laYEg== | ||
| -----END CERTIFICATE----- | ||
| private_key: | ||
| inline_string: | | ||
| -----BEGIN RSA PRIVATE KEY----- | ||
| MIIEpAIBAAKCAQEAtpiYA4/INuflkPe4L/GTslmngNQUCo8TzPXG0gt7uoxr4Feu | ||
| Vy7AaD28S2/hwhbl+bDtHTQYmvBUwNMsYzpND2eQ3sSIumdeLzBEKP2mnnZ9gE/Z | ||
| d2TIuZl686RpDq0B6ZdZSpCubqQmmPFLiRNH8JViJZMN5yqMt7T5oq+DnCYQZllq | ||
| mpAwd6NnhKALrYmZ87oqc0zhkf+5amP7zMYKkwQuRwcx4QPZkEp3+qhszolpAJ52 | ||
| dFGJ+pLuUVDg0Gf0cnxLjFKc6vcTlj4tsymR4ci58MHRt4EdGdhShw0oaj67gRRf | ||
| U4Vj61I2ZAVH07kL0mjO2TZTEKrOEJJ7/dtxdwIDAQABAoIBACz6E1+1N/0GTA7U | ||
| ZgMxP09MNC1QkAs1yQvQcoPknjqKQjxFfMUu1+gVZN80FOjpGQbTJOTvoyvvDQFe | ||
| Qu3CO58SxKWKxZ8cvR9khTWPnU4lI67KfGejZKoK+zUuh049IV53kGAEmWLZfkRo | ||
| E1IVdL/3G/DjcyZA3d6WbnM7RnDcqORPnig4lq5HxN76eBdssbxtrAi3Sjy3ChMy | ||
| BLInnryF4UtaT5xqR26YjgtFmYkunrgXTe1i/ewQgBBkSPXcNr7or69hCCv0SG9e | ||
| vRsv1r+Uug3/iRZDjEhKBmXWNAZJ/IsDF37ywiyeBdUY+klDX+mWz+0BB0us8b4u | ||
| LxoZQTECgYEA2Gu9EVC0RMrQ9FF5AgKKJWmZKkOn346RkPrtbl5lbuUgnVdBXJjr | ||
| wfMZVTD/8E/tMN4EMSGmC9bxCpRRzhrphrm7SHGD6b9O30DH9q0TV0r0A8IG/bMO | ||
| xJLYjrYVxtEE+KckzvyvfIefbDG7wYkI3u+ObmjBg9t6jcErKlI/PdkCgYEA1/1E | ||
| T+cpR16iOPz1mz+f/GU4YmPkdSDj/PrjMv0c1OTDvdPiZPpLkhLUKiICnKSKbYjX | ||
| Ko8fdZc3cmakgD1dXtAfR7Tf/hXQIR5+iHD48I5e9DVlkqMNDObfj82ohTFKVe/P | ||
| ZSwgDiAPTMFxWr26u/GzY5D3adCQYJyKE2wTh88CgYEAu7vpzGVnmu0ciXNLNvUh | ||
| BQcvODxsGT9BArTI1Z7I+oOD4TjZmAuHJz1L0lypB7stk+BjXoND2K1hdr3moJUz | ||
| 0gy3a0YdGd07++nkDBVi26xHNCNRkS2MN/TyKgnFpiuW1mOXSH5lc+7p2h7iMiY/ | ||
| LbQ8p4Xzp//xtZnFafbiqTECgYEAwDN5KZ1r5z24H/xCVv+cT46HSU7ZCr3VA9cC | ||
| fOouUOitouu9J9xviTJGKKQRLPFi2awOxKmN9ic1SRE7y35P60JKw5WaSdGBXydy | ||
| s9nMPMyEhM5Lb9y2jUeZo68ACl5dZvG63a4RbGBtHQF67KOvWvXvi2eCM2BMShyi | ||
| 5jujeZMCgYAjewq1hVqL1FOD8sIFpmndsH3+Dfc7BJ/erqGOX9bQYGvJO4nCe+7K | ||
| 4o8qFQf4jwdxu0iNxYJIMdn+l4/pz2e7GUFHjgMduUclf27Qj1p+8EyYqp6cmkzM | ||
| 8mcwRkYo3aM70EmUu0Xxi3d5O5F1bIJ5MkgXaX/zSF2N02B3jXroxQ== | ||
| -----END RSA PRIVATE KEY----- | ||
| )EOF"); | ||
| TestUtility::loadFromYaml(yaml, tls_context); | ||
| envoy::extensions::transport_sockets::quic::v3::QuicDownstreamTransport quic_config; | ||
| quic_config.mutable_downstream_tls_context()->MergeFrom(tls_context); | ||
|
|
||
| std::vector<std::string> server_names; | ||
| auto& config_factory = Config::Utility::getAndCheckFactoryByName< | ||
| Server::Configuration::DownstreamTransportSocketConfigFactory>( | ||
| "envoy.transport_sockets.quic"); | ||
|
|
||
| return config_factory.createTransportSocketFactory(quic_config, factory_context, server_names); | ||
| } | ||
|
|
||
| QuicTestServer::QuicTestServer() | ||
| : api_(Api::createApiForTest(stats_store_, time_system_)), | ||
| version_(Network::Address::IpVersion::v4) { | ||
| ON_CALL(factory_context_, api()).WillByDefault(testing::ReturnRef(*api_)); | ||
| ON_CALL(factory_context_, scope()).WillByDefault(testing::ReturnRef(stats_store_)); | ||
| } | ||
|
|
||
| void QuicTestServer::startQuicTestServer() { | ||
| // pre-setup: see https://github.com/envoyproxy/envoy/blob/main/test/test_runner.cc | ||
| Thread::TestThread test_thread; | ||
| ProcessWide process_wide; | ||
| Thread::MutexBasicLockable lock; | ||
| Logger::Context logging_state(spdlog::level::level_enum::err, | ||
|
colibie marked this conversation as resolved.
|
||
| "[%Y-%m-%d %T.%e][%t][%l][%n] [%g:%#] %v", lock, false, false); | ||
| // end pre-setup | ||
|
|
||
| FakeUpstreamConfig upstream_config{time_system_}; | ||
| upstream_config.upstream_protocol_ = Http::CodecType::HTTP3; | ||
|
colibie marked this conversation as resolved.
Outdated
|
||
| upstream_config.udp_fake_upstream_ = FakeUpstreamConfig::UdpConfig(); | ||
|
|
||
| Network::TransportSocketFactoryPtr factory = createUpstreamTlsContext(factory_context_); | ||
|
|
||
| int port = 34210; | ||
| aupstream_ = std::make_unique<AutonomousUpstream>(std::move(factory), port, version_, | ||
| upstream_config, false); | ||
|
|
||
| // see upstream address | ||
| std::cerr << "Upstream now listening on " << aupstream_->localAddress()->asString() << "\n"; | ||
|
colibie marked this conversation as resolved.
Outdated
|
||
| } | ||
|
|
||
| void QuicTestServer::shutdownQuicTestServer() { aupstream_.reset(); } | ||
|
|
||
| int QuicTestServer::getServerPort() { return aupstream_->localAddress()->ip()->port(); } | ||
| } // namespace Envoy | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,40 @@ | ||
| #pragma once | ||
|
|
||
| #include "source/common/stats/isolated_store_impl.h" | ||
| #include "source/extensions/transport_sockets/tls/ssl_socket.h" | ||
|
|
||
| // test_runner setups | ||
| #include "source/common/common/logger.h" | ||
| #include "source/exe/process_wide.h" | ||
|
|
||
| #include "absl/strings/str_format.h" | ||
| #include "envoy/extensions/transport_sockets/quic/v3/quic_transport.pb.h" | ||
| #include "test/mocks/server/transport_socket_factory_context.h" | ||
| #include "test/integration/autonomous_upstream.h" | ||
| #include "test/test_common/network_utility.h" | ||
|
|
||
| namespace Envoy { | ||
| class QuicTestServer { | ||
| private: | ||
| testing::NiceMock<Server::Configuration::MockTransportSocketFactoryContext> factory_context_; | ||
| Stats::IsolatedStoreImpl stats_store_; | ||
| Event::GlobalTimeSystem time_system_; | ||
| Api::ApiPtr api_; | ||
| Network::Address::IpVersion version_; | ||
| std::unique_ptr<AutonomousUpstream> aupstream_; | ||
|
colibie marked this conversation as resolved.
Outdated
|
||
|
|
||
| void setup(); | ||
|
colibie marked this conversation as resolved.
Outdated
|
||
| Network::TransportSocketFactoryPtr createUpstreamTlsContext( | ||
| testing::NiceMock<Server::Configuration::MockTransportSocketFactoryContext>&); | ||
|
|
||
| public: | ||
| QuicTestServer(); | ||
|
|
||
| void startQuicTestServer(); | ||
|
|
||
| void shutdownQuicTestServer(); | ||
|
|
||
| int getServerPort(); | ||
| }; | ||
|
|
||
| } // namespace Envoy | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| #include "test/common/integration/quic_test_server_interface.h" | ||
|
|
||
| // NOLINT(namespace-envoy) | ||
|
|
||
| static std::shared_ptr<Envoy::QuicTestServer> strong_quic_test_server_; | ||
|
colibie marked this conversation as resolved.
|
||
| static std::weak_ptr<Envoy::QuicTestServer> quic_test_server_; | ||
|
|
||
| static std::shared_ptr<Envoy::QuicTestServer> quic_test_server() { | ||
| return quic_test_server_.lock(); | ||
| } | ||
|
|
||
| void start_server() { | ||
| // start server | ||
|
colibie marked this conversation as resolved.
Outdated
|
||
| strong_quic_test_server_ = std::make_shared<Envoy::QuicTestServer>(); | ||
| quic_test_server_ = strong_quic_test_server_; | ||
|
|
||
| if (auto e = quic_test_server()) { | ||
| e->startQuicTestServer(); | ||
| } | ||
| } | ||
|
|
||
| void shutdown_server() { | ||
| auto e = strong_quic_test_server_; | ||
| strong_quic_test_server_.reset(); | ||
| e->shutdownQuicTestServer(); | ||
| } | ||
|
|
||
| int get_server_port() { | ||
| if (auto e = quic_test_server()) { | ||
| return e->getServerPort(); | ||
| } | ||
| return -1; // failure | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| #pragma once | ||
|
|
||
| #include "test/common/integration/quic_test_server.h" | ||
|
|
||
| // NOLINT(namespace-envoy) | ||
|
|
||
| #ifdef __cplusplus | ||
| extern "C" { // functions | ||
| #endif | ||
|
|
||
| void start_server(); | ||
|
|
||
| void shutdown_server(); | ||
|
|
||
| int get_server_port(); | ||
|
|
||
| #ifdef __cplusplus | ||
| } // functions | ||
| #endif |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| load("@envoy//bazel:envoy_build_system.bzl", "envoy_package") | ||
|
|
||
| licenses(["notice"]) # Apache 2 | ||
|
|
||
| envoy_package() | ||
|
|
||
| # dynamic library for the Envoy Mobile aar | ||
| cc_binary( | ||
| name = "libquic_test_server_jni.so", | ||
| testonly = True, | ||
| srcs = [ | ||
| "quic_test_server_jni_interface.cc", | ||
| "@local_jdk//:jni_header", | ||
| "@local_jdk//:jni_md_header-linux", | ||
| ], | ||
| copts = ["-std=c++17"], | ||
| linkopts = [ | ||
| "-lm", | ||
| ], | ||
| linkshared = True, | ||
| deps = [ | ||
| "//library/common:envoy_main_interface_lib", | ||
| "//library/common/api:c_types", | ||
| "//library/common/jni:base_java_jni_lib", | ||
| "//test/common/integration:quic_test_server_interface_lib", | ||
| "@envoy_mobile_extra_jni_deps//:extra_jni_dep", | ||
| ], | ||
| ) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,37 @@ | ||
| #include <jni.h> | ||
|
|
||
| #include <iostream> | ||
|
|
||
| #include "test/common/integration/quic_test_server_interface.h" | ||
|
|
||
| #include "library/common/jni/jni_support.h" | ||
| #include "library/common/jni/jni_utility.h" | ||
| #include "library/common/jni/jni_version.h" | ||
|
|
||
| // NOLINT(namespace-envoy) | ||
|
|
||
| // Quic Test ServerJniLibrary | ||
|
|
||
| extern "C" JNIEXPORT void JNICALL | ||
| Java_io_envoyproxy_envoymobile_engine_testing_QuicTestServer_nativeStartQuicTestServer( | ||
| JNIEnv* env, jclass clazz, jstring file_path, jstring test_data_dir) { | ||
| jni_log("[QTS]", "starting server"); | ||
| start_server(); | ||
|
|
||
| // Call java method to open block | ||
| env->CallStaticVoidMethod(clazz, env->GetStaticMethodID(clazz, "onServerStarted", "()V")); | ||
| } | ||
|
|
||
| extern "C" JNIEXPORT jint JNICALL | ||
| Java_io_envoyproxy_envoymobile_engine_testing_QuicTestServer_nativeGetServerPort(JNIEnv* env, | ||
| jclass clazz) { | ||
| jni_log("[QTS]", "getting server port"); | ||
| return get_server_port(); | ||
| } | ||
|
|
||
| extern "C" JNIEXPORT void JNICALL | ||
| Java_io_envoyproxy_envoymobile_engine_testing_QuicTestServer_nativeShutdownQuicTestServer( | ||
| JNIEnv* env, jclass clazz) { | ||
| jni_log("[QTS]", "shutting down server"); | ||
| shutdown_server(); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| load("@envoy//bazel:envoy_build_system.bzl", "envoy_package") | ||
| load("@envoy_mobile//bazel:kotlin_test.bzl", "envoy_mobile_android_test") | ||
|
|
||
| licenses(["notice"]) # Apache 2 | ||
|
|
||
| envoy_package() | ||
|
|
||
| android_library( | ||
| name = "testing", | ||
| srcs = [ | ||
| "QuicTestServer.java", | ||
| ], | ||
| data = glob(["data/*"]), | ||
| visibility = ["//test:__subpackages__"], | ||
| deps = [ | ||
| "//library/java/io/envoyproxy/envoymobile/engine:envoy_base_engine_lib", | ||
| "//library/java/io/envoyproxy/envoymobile/engine:envoy_engine_lib", | ||
| "//library/kotlin/io/envoyproxy/envoymobile:envoy_interfaces_lib", | ||
| "//library/kotlin/io/envoyproxy/envoymobile:envoy_lib", | ||
| "//test/java/org/chromium/net/testing", | ||
| "@maven//:junit_junit", | ||
| ], | ||
| ) | ||
|
|
||
| envoy_mobile_android_test( | ||
| name = "quic_test_server_test", | ||
| srcs = [ | ||
| "QuicTestServerTest.java", | ||
| ], | ||
| library_path = "library/common/jni:test/common/jni", | ||
| native_deps = [ | ||
| "//library/common/jni:libndk_envoy_jni.so", | ||
| "//library/common/jni:libndk_envoy_jni.jnilib", | ||
| "//test/common/jni:libquic_test_server_jni.so", | ||
| ], | ||
| deps = [ | ||
| ":testing", | ||
| "//library/java/io/envoyproxy/envoymobile/engine:envoy_base_engine_lib", | ||
| "//library/java/io/envoyproxy/envoymobile/engine:envoy_engine_lib", | ||
| "//library/kotlin/io/envoyproxy/envoymobile:envoy_interfaces_lib", | ||
| "//library/kotlin/io/envoyproxy/envoymobile:envoy_lib", | ||
| "//test/java/org/chromium/net/testing", | ||
| ], | ||
| ) |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.