You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Mono.Android-Tests] Stop using tls-test.internalx.com (#6678)
The TLS certificate on `tls-test*.internalx.com` has expired recently.
Since then, the unit test
`AndroidHandlerTestBase.Sanity_Tls_1_2_Url_WithMonoClientHandlerFails()`
has been failing:
SHOULD NOT BE REACHED: BTLS is present, TLS 1.2 should work. Network error? System.AggregateException: One or more errors occurred. (The SSL connection could not be established, see inner exception.)
---> System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception.
---> Mono.Btls.MonoBtlsException: Ssl error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED
at /Users/builder/jenkins/workspace/archive-mono/2020-02/android/release/external/boringssl/ssl/handshake_client.c:1132
at Mono.Btls.MonoBtlsContext.ProcessHandshake ()
at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate)
at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool)
at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status)
at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Boolean runSynchronously, Mono.Net.Security.MonoSslAuthenticationOptions options, System.Threading.CancellationToken cancellationToken)
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore (System.IO.Stream stream, System.Net.Security.SslClientAuthenticationOptions sslOptions, System.Threading.CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore (System.IO.Stream stream, System.Net.Security.SslClientAuthenticationOptions sslOptions, System.Threading.CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateConnectionAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.WaitForCreatedConnectionAsync (System.Threading.Tasks.ValueTask1[TResult] creationTask)
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <74d9125dbed14683af25cb9fe4197e48>:0
at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait ()
at Xamarin.Android.NetTests.AndroidHandlerTestBase+<>c__DisplayClass5_1.<Sanity_Tls_1_2_Url_WithMonoClientHandlerFails>b__1 ()
Remove the `Sanity_Tls_1_2_Url_WithMonoClientHandlerFails()` and
`Tls_1_2_Url_Works()` unit tests, as we feel less need to verify BTLS
behavior (mono/2020-02 is rarely updated), and removing these tests
removes usage of `tls-test.internalx.com`.
Remove or update other unit tests to entirely remove all usage of
`tls-test*.internalx.com`, as maintaining these VMs is a headache.
This impacts:
* `AndroidHandlerTestBase.Redirect_POST_With_Content_Works()`
* `AndroidHandlerTestBase.Redirect_Without_Protocol_Works()`
* `AndroidHandlerTestBase.Sanity_Tls_1_2_Url_WithMonoClientHandlerFails()`
* `AndroidHandlerTestBase.Tls_1_2_Url_Works()`
Tests that attempted to run against a particular TLS version have
been removed; others have been updated to use `httpbingo.org`.
Finally, add a new `RunTestApp` target to
`build-tools/scripts/TestApks.targets`; this simplifies the YAML
invocation of some unit tests, and means that the
`yaml-templates/apk-instrumentation.yaml` template no longer needs
a `packageType:` parameter, as the `RunTestApp` target handles the
distinction.
0 commit comments