Commit Graph

159 Commits

Author SHA1 Message Date
Cesar Blum Silveira 89a63d190e Don't close connection when Content-Length set but no bytes written. 2017-01-12 12:38:15 -08:00
Cesar Blum Silveira e26f91a392 Call OnStarting before verifying response length (#1289). 2017-01-10 14:24:44 -08:00
Cesar Blum Silveira cf77813c82 Re-enable HTTPS tests (#1273). 2017-01-10 13:48:46 -08:00
John Luo 57b368566d Use StatusCode instead of three digit numbers for status codes 2017-01-09 10:09:54 -08:00
Stephen Halter 2351c1b558 Create a direct way to configure Kestrel endpoints
- Replace endpoint configuration via .UseUrls() or --server.urls with Listen*
  methods on KestrelSerrverOptions.
- Replace IConnectionFilter with IConnectionAdapter which no longer exposes
  ServerAddress via a context.
- Simplify libuv Listener classes
- Support systemd socket activation
- Add docker-based test for systemd socket activation to be run on Travis
2017-01-06 17:37:58 -08:00
Pranav K c72605f43a Fix NuGet downgrade warning
Works around warning where a P2P reference is explicitly listed in the project. For e.g.

warn :  SampleApp (>= 1.1.0) -> Microsoft.AspNetCore.Server.Kestrel.Https (>= 1.2.0) -> Microsoft.AspNetCore.Server.Kestrel
warn :  SampleApp (>= 1.1.0) -> Microsoft.AspNetCore.Server.Kestrel (>= 1.2.0)
2016-12-28 09:44:21 -08:00
Cesar Blum Silveira 81a8ba0347 Skip tests commentd out in 973b705. 2016-12-23 17:38:54 -08:00
Cesar Blum Silveira 973b705cdb Disable tests that hang on SslStream.WriteAsync after update to CoreFx 4.4. 2016-12-22 18:37:14 -08:00
Pranav K 5b8f7c2b2b Updating to 4.4 CoreFx packages 2016-12-21 22:22:13 -08:00
Cesar Blum Silveira 4485bfec39 Fix test races caused by cedbe76. 2016-12-13 13:57:26 -08:00
Cesar Blum Silveira cedbe76f52 Abort request on client FIN (#1139). 2016-12-13 12:03:33 -08:00
Cesar Blum Silveira defcbdb907 Revert "Add MaxRequestBodySize limit (#478)."
This reverts commit e53a87be9c.
2016-12-09 16:30:12 -08:00
Cesar Blum Silveira e53a87be9c Add MaxRequestBodySize limit (#478). 2016-12-05 17:06:57 -08:00
Pranav K 9d081d17e5 Updating versions to 1.2.0-* 2016-11-09 14:18:16 -08:00
Stephen Halter c0e75dcbf8 Always flush headers on first response write (#1202). 2016-11-09 13:59:12 -08:00
Stephen Halter 194059a198 Implement Begin/End Read/Write methods in LoggingStream
- This allows the reads and writes from SslStream to be logged on desktop .NET
2016-11-04 21:38:57 -07:00
Stephen Halter 0d559468f1 Make connection reset logs less scary
- Particularly between requests, connection resets aren't that abnormal.
2016-11-04 21:36:51 -07:00
Cesar Blum Silveira a83bbcfba7 Prevent block leak when socket is closed before connection filter is applied. 2016-11-04 20:56:01 -07:00
Cesar Blum Silveira a1c598733b Reject POST and PUT requests with no Content-Length or Transfer-Encoding (#1130). 2016-11-04 18:04:27 -07:00
Cesar Blum Silveira 5b65117b64 Add functional regression test for 'Connection: keep-alive, upgrade' request header. 2016-11-04 17:54:22 -07:00
Stephen Halter 8591900849 Fix more test failures caused by connection resets
- Avoid sending data that won't be processed.
2016-11-04 16:05:11 -07:00
Cesar Blum Silveira 29408956f9 Handle tokens in Transfer-Encoding header (#1181). 2016-10-31 13:57:34 -07:00
Nathan Anderson 610601cc6e test fixes and whitespace changes to generated code 2016-10-20 15:23:03 -07:00
Cesar Blum Silveira 78584799a4 Separate request rejection from bad request state setting. 2016-10-17 15:16:50 -07:00
Mike Harder f1071dea50 Set StatusCode before disposing HttpContext (#876) 2016-10-17 15:16:43 -07:00
Pranav K 2876f82521 Updating to netcoreapp1.1 2016-10-13 11:19:16 -07:00
Pranav K e2f11ebd38 Revert "Updating to netcoreapp1.1"
This reverts commit dd23f24241.
2016-10-12 16:08:56 -07:00
Pranav K dd23f24241 Updating to netcoreapp1.1 2016-10-12 13:45:43 -07:00
Cesar Blum Silveira ffc3eb3afd HEAD response can include Content-Length header. 2016-10-12 11:38:18 -07:00
Cesar Blum Silveira 7ee13875b1 Reduce delay variability in KeepAliveTimeoutTests.ConnectionKeptAliveBetweenRequests() (#1157). 2016-10-11 16:22:59 -07:00
Cesar Blum Silveira f8813a600d Handle response content length mismatches (#175). 2016-10-11 13:25:22 -07:00
Pranav K 8c103f0f23 Revert "Revert to Microsoft.NETCore.App to 1.0.0"
This reverts commit f1f66448f4.
2016-10-10 19:23:37 -07:00
Cesar Blum Silveira 3177ba0aae Wait for frame loop completion to dispose connection stream (#1156). 2016-10-10 10:16:03 -07:00
Cesar Blum Silveira 663b825d97 Merge branch 'benaadams/codecoverage' into dev 2016-10-06 15:01:43 -07:00
Cesar Blum Silveira 2c94884da9 Include address in error message when address already in use (#1086). 2016-10-05 14:23:09 -07:00
Ben Adams 2708b8a534 Add CodeCoverage to tests 2016-10-05 21:42:31 +01:00
Pranav K f1f66448f4 Revert to Microsoft.NETCore.App to 1.0.0 2016-10-05 12:03:46 -07:00
Pranav K 91497621c9 Updating partner package versions 2016-10-03 19:59:39 -07:00
Cesar Blum Silveira 4117ad8a1e Refactor non-body response handling.
- Add functional tests
- Remove BadHttpResponse, ResponseRejectionReasons and TestFrameProtectedMembers
- Chunk non-keepalive HTTP/1.1 responses
- Set _canHaveBody to true when StatusCode == 101
- Add test to check that upgraded connections are always closed when the app
  is done
- Log writes on responses to HEAD requests only once.
2016-10-03 16:46:59 -07:00
Cesar Blum Silveira 09fda749b0 Don't reset frame state when connection is aborted (#1103). 2016-09-28 15:06:22 -07:00
Cesar Blum Silveira 73656f6503 Assume zero length on non-keepalive requests without Content-Length or Transfer-Encoding (#1104). 2016-09-28 12:30:53 -07:00
Cesar Blum Silveira 0312da7df3 Add request headers timeout (#1110). 2016-09-27 17:08:02 -07:00
Cesar Blum Silveira 49ff98f8cb More specific response status codes for errors (#653).
- 414 when request line exceeds size limit
- 431 when request headers exceed size or count limits
- 505 when request line contains unsupported HTTP version
2016-09-22 12:13:14 -07:00
Cesar Blum Silveira afa89b3993 Change SkipReason for ThreadCountTests on OS X. 2016-09-16 09:09:26 -07:00
Cesar Blum Silveira 1a273f5a34 Improve keep-alive timeout.
- Track time more accurately
- Control timeout in Connection instead of Frame
2016-09-14 20:57:16 -07:00
Stephen Halter 84efe624a6 Fix deadlock in HttpsTests
- The xunit synccontext was saving us again
2016-09-12 11:06:29 -07:00
Pavel Krymets c777a9efea Use TaskCache class from Microsoft.Extensions.TaskCache.Sources (#1089)
Instead of Task.FromResult(0)
2016-09-09 15:57:33 -07:00
Cesar Blum Silveira 5b2065230d Fix failing keep-alive timeout tests. 2016-09-07 20:58:00 -07:00
Cesar Blum Silveira f2085b1968 Add keep-alive timeout (#464). 2016-09-06 12:48:47 -07:00
Cesar Blum Silveira 19f8958fa8 Move TestServer to shared directory. 2016-09-06 12:47:24 -07:00
Cesar Blum Silveira 08f98f4790 Add header limit options (#475). 2016-08-09 12:31:39 -07:00
Cesar Blum Silveira f2fa8b5660 Add functional test. 2016-08-08 11:58:37 -07:00
Cesar Blum Silveira 55f409b38b Fix hanging functional tests. 2016-08-05 16:46:34 -07:00
Cesar Blum Silveira fa41588779 Move server start failure test in MaxRequestLineSizeTests to KestrelServerTests. 2016-08-04 15:43:53 -07:00
Cesar Blum Silveira 8836eec7d8 Limit request line length (#784). 2016-08-03 15:39:16 -07:00
Stephen Halter dfe12223b8 Ensure HTTPS handshake errors aren't logged on socket close 2016-08-03 15:21:57 -07:00
Cesar Blum Silveira 3c0e0f8d88 Always throw same exception type on read after connection error (#975). 2016-07-21 16:33:56 -07:00
Cesar Blum Silveira bdf9f8dd4e Wait for connection in RequestTests.ConnectionResetAbortsRequest (#978). 2016-07-18 13:29:42 -07:00
Mike Harder 41e50ba688 Enable all tests in HttpsConnectionFilterTests to run on all platforms
- Move HttpClientSlim.cs to test\shared
- Change HttpClientSlim to static class to simplify calling code
- Add HttpClientSlim.PostAsync()
2016-07-18 12:38:19 -07:00
Cesar Blum Silveira 3bb7f4e2c4 Treat ECONNRESET as a connection error (#934). 2016-07-15 14:53:21 -07:00
Mike Harder 0c52529b97 Add tests for HTTPS urls to AddressRegistrationTests (#794)
- Added HttpClientSlim, a lightweight version of HttpClient implemented using Socket and SslStream.
2016-07-14 18:35:47 -07:00
Stephen Halter 7e1aa4e1d0 Only test binding to "operational" network interfaces 2016-07-14 16:08:39 -07:00
Mike Harder 2f36c80970 Remove skip condition for IPv6 with scope ID on Linux and Mac (#964)
- Was required to workaround https://github.com/dotnet/corefx/issues/8235 which is now fixed.
2016-07-11 17:53:59 -07:00
Mike Harder 8a43be94ef AddressRegistrationTests should get local IPs from System.Net.NetworkInformation (#796) 2016-07-11 14:40:12 -07:00
Doug Bunting 82a0a99107 One build to rule them all
- well, at least VS and command-line builds will share output
- part of aspnet/Coherence-Signed#277
2016-07-07 12:07:14 -07:00
Cesar Blum Silveira 9f720eda90 Reset frame streams on each request (#940). 2016-07-06 14:57:43 -07:00
Pranav K a09bce0c07 Updating to RTM builds of xunit and Moq 2016-06-30 16:00:39 -07:00
Pranav K de668c2ebd Updating to dev versions
# Conflicts:
#	test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/project.json
2016-06-16 10:40:58 -07:00
jacalvar 6b7e27269c Update Json.NET to 9.0.1 2016-06-15 15:08:50 -07:00
Mike Harder 5ecb1f59a4 Limit size of memory buffer when reading request (#304)
- Added property `KestrelServerOptions.MaxRequestBufferSize`
 - Default is 1,048,576 bytes (1MB)
 - If value is null, the size of the request buffer is unlimited.
- Fixed bug in `IConnectionControl.Resume()` where `_socket.ReadStart()` can throw if the socket is already disconnected.
- Made `UvStreamHandle.ReadStop()` idempotent, to match `uv_read_stop()`.
2016-06-13 18:52:20 -07:00
Cesar Blum Silveira 98feee9dbd Combine LargeMultipartUpload and LargeUpload into one test. 2016-06-13 17:55:19 -07:00
N. Taylor Mullen 917c3e0987 Remove direct Microsoft.NETCore.Platforms dependency.
- Microsoft.NETCore.App now pulls this package in.

aspnet/Coherence-Signed#344
2016-06-13 15:29:13 -07:00
jacalvar b6ceac559a Update Json.NET to 9.0.1-beta1 2016-06-06 21:25:52 -07:00
moozzyk 69bd0dc4be Reject requests that have null characters in path 2016-06-06 09:59:42 -07:00
Cesar Blum Silveira 2bbaa52b08 Disable ThreadCountTests on Mac. 2016-06-03 19:57:28 -07:00
Andrew Stanton-Nurse 09f5be1434 fix #909 by moving most classes to Internal ns 2016-06-03 14:14:21 -07:00
Cesar Blum Silveira 58410bf016 Fix Travis build. 2016-06-01 16:52:38 -07:00
Cesar Blum Silveira 50208a3a79 Implement IHttpRequestFeature.RawTarget (aspnet/HttpAbstractions#596). 2016-05-31 15:30:12 -07:00
John Luo 50e140da43 React to update CoreCLR packages
https://github.com/aspnet/Coherence/issues/97
2016-05-27 17:51:51 -07:00
Cesar Blum Silveira a3d0bd0ec4 Bind to both IPv4 and IPv6 when localhost is specified (#231). 2016-05-25 21:23:29 -07:00
Mike Harder 5ca6592677 Don't bind if only port is specified (#814) (#861)
- Also renamed ServerAddressFacts to ServerAddressTests to match existing test classes
2016-05-23 14:06:46 -07:00
Mike Harder 14bbba0641 Update addresses in IServerAddressesFeature with assigned dynamic ports (#758)
- Change most tests to use dynamic ports, rather than a fixed port obtained from GetNextPort().
- Add several new cases to `AddressRegistrationTests` and `ServerAddressFacts`.
- Remove project `test\Microsoft.AspNetCore.Server.Kestrel.TestCommon`.  It's not longer needed, since only `AddressRegistrationTests` uses `GetNextPort()`.
2016-05-04 11:27:23 -07:00
Pranav K f0358182e4 Fix build warnings 2016-05-02 11:27:18 -07:00
Pranav K 5135ee9d2d Fixing CI build break 2016-04-27 17:34:01 -07:00
Cesar Blum Silveira 95722670c1 More robust port assignment for tests. 2016-04-20 17:25:50 -07:00
Pranav K 33ad355114 Use latest build of dotnet-test-xunit 2016-04-19 14:54:04 -07:00
Pavel Krymets 5273e0e768 Bring Microsoft.NETCore.Platforms dependency back 2016-04-18 17:01:20 -07:00
Pavel Krymets f61af9a746 Migrate tests, tools and samples to portable 2016-04-14 15:47:59 -07:00
Mike Harder 6047a62c07 Add IWebHostBuilder.UseKestrel(options) overload to configure Kestrel (#720)
- Replace KestrelServerInformation with KestrelServerOptions.
- Move properties from KestrelServerPoolingParameters to KestrelServerOptions.
- Stop reading default options from "kestrel.*" config settings.
- Move extension method IApplicatonBuilder.UseKestrelConnectionLogging() to KestrelServerOptions.UseConnectionLogging()
2016-04-13 14:57:54 -07:00
Stephen Halter 7d4fcfeb23 Depend on separate libuv package 2016-04-10 21:15:43 -07:00
Stephen Halter c567e4814a Clean up Travis builds
- No longer build libuv in .travis.yml
- The Ubuntu libuv build should now be taken from http://github.com/aspnet/libuv-build
- Remove unneeded packages from .travis.yml
- Stop skipping mono tests
2016-03-31 12:25:01 -07:00
Mike Harder 088b7e5779 Add UseKestrel() extension method to IWebHostBuilder (#713) 2016-03-30 12:08:32 -07:00
Doug Bunting bb2e76c7f1 Remove project name from output path
- aspnet/Coherence-Signed#187
- remove `<RootNamespace>` settings but maintain other unique aspects e.g. `<DnxInvisibleContent ... />`
- in a few cases, standardize on VS version `14.0` and not something more specific
2016-03-02 18:57:23 -08:00
Cesar Blum Silveira 41f77ee3fd Handle uploads larger than 2GB. 2016-03-02 16:09:52 -08:00
N. Taylor Mullen c33b422d7a Transition to netstandard.
- dotnet5.X => netstandard1.y (where y = x-1).
- DNXCore50 => netstandardapp1.5.
- Applied the same changes to ifdefs.
2016-03-01 13:36:06 -08:00
Stephen Halter 4bcc44faed Merge branch 'benaadams/build-issues' into dev 2016-02-26 12:18:15 -08:00
Ben Adams e579745f93 System.Net.Http references 2016-02-26 12:17:59 -08:00
Doug Bunting 37055517ee Correct test attributes
- #654
- `[IPv6SupportedCondition]` requires `[ConditionalFact]` or `[ConditionalTheory]`
2016-02-24 22:35:20 -08:00
BrennanConroy f6d0443692 Add build references to tests because they don't flow up to parent anymore. See:https://github.com/NuGet/Home/issues/2153 2016-02-22 16:01:24 -08:00
John Luo 99ccae64eb Updating test TFMs for custom test discovery 2016-02-18 16:50:53 -08:00