Cesar Blum Silveira
375e8b7022
Change context relationships from inheritance to composition.
2016-09-27 11:53:06 -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
Stephen Halter
63509b9e10
Make FrameRequestStream.CopyToAsync(...) copyless
...
- Add tests for when the CopyToAsync destinationStream throws.
- Add test to verify the destination stream sees the same array written to by
the producer.
2016-09-20 11:54:58 -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
Stephen Halter
39bd49ea1a
Avoid blocking the MockLibuv loop with test code
...
- This allows for a graceful shutdown with dotnet test -Parallel None
- By default, the xunit synccontext will dispatch automatically off
the KestrelThread, but it's best not to rely on this behavior.
2016-09-12 11:06:29 -07:00
Cesar Blum Silveira
8c513402a3
Always call ConsumingComplete() with furthest examined position ( #1095 ).
2016-09-10 20:05:14 -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
5512516ee8
Remove commented test.
2016-09-01 17:18:59 -07:00
Stephen Halter
1ecef8094a
Make Kestrel's response buffer limit configurable
2016-08-30 16:01:42 -07:00
Stephen Halter
acfcafb6e1
Ensure MockLibuv.OnPostTask doesn't complete too early
2016-08-29 20:53:00 -07:00
Stephen Halter
0742d113be
Make all calls to ThreadPool.QueueUserWorkItem through IThreadPool
...
- This allows SocketOutputTests to cause QUWI to exec synchronously
- To avoid allocations, the logger can't be captured making it "unsafe"
2016-08-29 20:52:47 -07:00
Stephen Halter
4587a0fc95
Prevent possible deadlocks when using MockLibuv.OnPostTask
2016-08-29 12:14:19 -07:00
Cesar Blum Silveira
b6a177ef0b
Test for categoryName passed to ILoggerFactory.CreateLogger() in KestrelServer.ctor() ( #797 )
2016-08-26 15:37:15 -07:00
Stephen Halter
7bd30ea693
Log all startup errors in KestrelServer
2016-08-18 14:52:26 -07:00
Stephen Halter
972be6e8c1
Disable automatic chunking for all non keep-alive requests
...
- Fixes a bug where Upgrade requests (e.g. WebSockets) would be chunked
- Allows chunking to be disabled by setting "Connection: close" on the response
2016-08-17 12:39:18 -07:00
Stephen Halter
16fbb94c44
Automatically chunk and set 0 Content-Length for non keep-alive responses
2016-08-15 16:27:54 -07:00
Stephen Halter
5f4e60bf8d
Always set "Connection: close" header for non keep-alive responses
2016-08-15 16:27:54 -07:00
Stephen Halter
8f4cc3003b
Improve SocketOutputTests
...
- This should increase reliability/determinism by removing timeouts.
2016-08-15 10:58:32 -07:00
Cesar Blum Silveira
08a91f17bf
Call OnStarting and OnCompleted callbacks in LIFO order ( #1042 ).
2016-08-10 14:52:05 -07:00
Cesar Blum Silveira
5181e4196c
Trace call to _uv_unsafe_async_send in MockLibuv.
2016-08-09 18:26:10 -07:00
Cesar Blum Silveira
08f98f4790
Add header limit options ( #475 ).
2016-08-09 12:31:39 -07:00
Pranav K
2f9bf9bb87
Updating to Moq \ Castle.Core that does not require imports
2016-08-08 14:35:04 -07:00
Cesar Blum Silveira
f2fa8b5660
Add functional test.
2016-08-08 11:58:37 -07:00
Cesar Blum Silveira
a5aacd6307
Throw when setting OnStarting after response has already started ( #806 ).
2016-08-08 11:38:06 -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
b8f21bee03
Update warning code for obsolete property in #pragma.
2016-08-04 14:05:23 -07:00
Stephen Halter
9727a4db86
Improve the performance of connection filters
...
- Buffer connection filter input less by using ProducingStart/Complete
- Simplify FilteredStreamAdapter
2016-08-03 16:45:39 -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
Stephen Halter
1020d69171
Better logging for connection errors during HTTPS handshake
2016-08-03 11:15:15 -07:00
Cesar Blum Silveira
20c1bb567d
Move TestConnection to the Microsoft.AspNetCore.Testing namespace.
2016-08-02 12:47:06 -07:00
Cesar Blum Silveira
5876e1983a
Move TestConnection to shared directory.
2016-08-02 12:30:53 -07:00
Cesar Blum Silveira
138f23b246
Remove TestServer dependency from TestConnection.
2016-08-02 12:26:17 -07:00
Mike Harder
4ece3f4b68
Change "String." to "string." to match coding convention
2016-08-01 11:09:31 -07:00
Stephen Halter
00a540dcb8
Merge branch 'benaadams/more-block-collect-info' into dev
2016-07-28 16:51:35 -07:00
Stephen Halter
5d6da35cb9
Add test verifying a chunked response can be written manually
2016-07-28 16:43:23 -07:00
Stephen Halter
3a67cb9df5
Merge branch 'benaadams/enum-rather-than-string' into dev
2016-07-25 10:30:33 -07:00
Ben Adams
0ab04d7e73
Tests to makes sure known strings are interned
2016-07-23 01:07:04 +01:00
Ben Adams
0a1ea124ee
Use HttpVersionType enum rather than string compare
2016-07-22 21:34:49 +01:00
David Fowler
0e7967a7fc
Allocate things per KestrelThread instead of per listener
...
- Moved things that have loop affinity to KestrelThread like
WriteReqPool, MemoryPool and the ConnectionManager
- Changed on the listeners to only kill the ListenSocket, not the
connections on dispose
- Moved connection disposal to KestrelThread.Stop
- Simplify the connection manager logic so it's possible to walk and
wait in a single call
2016-07-21 22:17:18 -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
Ben Adams
7b8abf5a3e
Improved Memoryblock tracking
...
Also fixed 3 tests that weren't handling block properly
2016-07-21 01:13:27 +01: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
Stephen Halter
fbcb5dcb1b
Prevent enumeration of queue during modification in SocketOutputTests
2016-07-15 11:53:54 -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
Stephen Halter
c1dadbd723
Make Bad Request tests more reliable
...
- Avoid calling write again after the request is already rejected
- Don't try to close a socket from the client if we already expect the server
to forcefully close the socket
2016-06-07 16:13:29 -07:00
jacalvar
b6ceac559a
Update Json.NET to 9.0.1-beta1
2016-06-06 21:25:52 -07:00
moozzyk
50e8948bb9
Fixing BadRequest tests to not try sending data after Bad Request
2016-06-06 15:27:45 -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
moozzyk
ef74926463
Fixing a test failing on Mac and Linux
2016-06-03 12:21:48 -07:00
Stephen Halter
6bff2ecb34
Small cleanup to SocketOutput's shutdown logic
2016-06-02 16:54:00 -07:00
Stephen Halter
07744e75d9
Gracefully handle connection close in SocketOutput.ProducingComplete
2016-06-02 16:54:00 -07:00
Stephen Halter
2d229e8980
Allow a maximum of 3 concurrent uv_write operations per connection
...
- Keep logic to prevent unnecessary calls to KestrelThread.Post
- This partially reverts commit 480996433e .
2016-06-02 16:52:06 -07:00
moozzyk
0342754c57
Using the optimized method for converting header name to ASCII
2016-06-02 16:36:22 -07:00
Cesar Blum Silveira
de022b6051
Improved handling of whitespace in headers.
2016-06-02 16:18:43 -07:00
Stephen Halter
9667907515
Prevent IOException from incorrectly failing test expecting 400 response
2016-06-02 12:22:05 -07:00
Chris R
6e36bbe32c
Add negative path tests.
2016-06-01 21:28:37 -07:00
Cesar Blum Silveira
58410bf016
Fix Travis build.
2016-06-01 16:52:38 -07:00
Stephen Halter
f609f41a7c
Reject non-ASCII chars in headers in addition to control chars
2016-06-01 16:01:15 -07:00
Pavel Krymets
bb92cc1c29
Fix NRE when aborting connection or client disconects
2016-06-01 15:52:05 -07:00
Chris R
6224f5b6e8
Perf: Remove unnecessary path checks
2016-06-01 14:56:49 -07:00
moozzyk
bcdd3147a1
Fixing "Error -4092 EACCES permission denied" in tests
...
A test is trying to bind to port 80 which fails if IIS is running on the machine
2016-05-31 18:55:29 -07:00
moozzyk
0753f06c28
Aborting request if a string can't be converted to ASCII
2016-05-31 17:11:31 -07:00
Cesar Blum Silveira
50208a3a79
Implement IHttpRequestFeature.RawTarget ( aspnet/HttpAbstractions#596 ).
2016-05-31 15:30:12 -07:00
Andrew Stanton-Nurse
290e1e3f3f
improve validation of HTTP methods
2016-05-31 14:13:13 -07:00
Mike Harder
306084356e
ServerAddress.FromUrl() should throw if Host is missing ( #860 )
2016-05-31 11:54:38 -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
0a181b1f3f
Reset Frame's IHttpRequestFeature.Headers and IHttpResponseFeature.Headers between requests ( #879 ).
2016-05-27 16:02:55 -07:00
Cesar Blum Silveira
6d3a416f0e
Test code nitpicks.
2016-05-27 15:02:32 -07:00
Cesar Blum Silveira
cea5fbbafa
Fix disabled tests in MultipleLoopTests.
2016-05-27 13:50:37 -07:00
Mike Harder
2453047fe2
ServerAddress.FromUrl() should throw for invalid url ( #875 )
2016-05-27 12:02:30 -07:00
Stephen Halter
b9b67f6bf4
Merge branch 'khellang/set-headers-on-response-start' into dev
2016-05-26 15:35:01 -07:00
Pavel Krymets
ef8b0a90d8
Fix merge formatting issues and cross plat tests
2016-05-26 10:34:25 -07:00
Kristian Hellang
72cc0ffbd5
Set Date and Server headers at response start
...
Closes #223
2016-05-26 17:38:16 +02:00
Pavel Krymets
71ecf5612f
Refactor and add ssl tests
2016-05-26 08:31:20 -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
Cesar Blum Silveira
3f4e2323f4
Throw when setting Frame.StatusCode or Frame.ReasonPhrase after response has already started ( #805 ).
2016-05-24 16:32:54 -07:00
Mike Harder
58070099fc
Remove Console.WriteLine() from MemoryPoolBlockTests ( #868 )
...
- Causes noise in test results
2016-05-24 11:38:24 -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
Cesar Blum Silveira
925d8e0200
Always cache headers and streams across frames ( #754 ).
2016-05-20 16:16:19 -07:00
Stephen Halter
a38a437efb
Merge branch 'khellang/server-header-option' into dev
2016-05-20 15:56:29 -07:00
Stephen Halter
c39546352a
Merge branch 'shanewalters/remote-cert' into dev
2016-05-20 15:53:51 -07:00
Kristian Hellang
2ab01c09fd
Add option to remove the Server header
2016-05-20 13:18:18 +02:00
Cesar Blum Silveira
86567e1d93
Fix engine test.
2016-05-19 14:06:27 -07:00
shanewalters
b17c070e1c
Updated to not use handle, centralize conversion logic.
2016-05-19 14:40:29 -06:00
Ben Adams
e8647c0cb4
Remove extra FrameContext class
...
Resolves #837
2016-05-19 19:22:39 +01:00
Stephen Halter
7e7f21ec49
Merge branch 'benaadams/dateheader' into dev
2016-05-18 17:11:01 -07:00
Cesar Blum Silveira
8c8ee150f7
Send 'Connection: close' in all 400 responses to HTTP/1.1 requests ( #840 ).
2016-05-18 15:03:31 -07:00
Cesar Blum Silveira
3e841ccba1
Always send HTTP/1.1 responses ( #792 ).
2016-05-16 16:11:37 -07:00
Cesar Blum Silveira
2cd86a2724
Temporarily disable BadHttpRequestTests.
2016-05-12 14:55:56 -07:00
Cesar Blum Silveira
3186e1bd72
Make TakeStartLine more robust ( #683 ).
2016-05-12 12:07:08 -07:00
Ben Adams
a3b0f809de
Only call PrepareDateValues if not already called for tick
2016-05-10 20:38:27 +01:00
Stephen Halter
fed7c44829
Merge branch 'halter73/validate-header' into dev
2016-05-04 12:35:26 -07:00
Stephen Halter
faf81f11f5
Add response header validation tests
2016-05-04 12:26:00 -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
Stephen Halter
f8c2c2470f
Merge branch 'benaadams/memorypool' into dev
2016-05-02 21:58:53 -07:00
Pranav K
7494e6a10a
Merge branch 'release' into dev
2016-05-02 16:23:48 -07:00
Pranav K
296ca0f948
Fix build break
2016-05-02 16:22:54 -07:00
Pranav K
ff510875f2
Merge branch 'release' into dev
2016-05-02 14:56:30 -07:00
Pranav K
f0358182e4
Fix build warnings
2016-05-02 11:27:18 -07:00
Ben Adams
a31d847719
Tests only to use pooled blocks
2016-04-30 11:16:24 +01:00
Pranav K
98846a4cc7
Merge branch 'release' into dev
2016-04-27 17:34:21 -07:00
Pranav K
5135ee9d2d
Fixing CI build break
2016-04-27 17:34:01 -07:00
Justin Van Patten
8f7c0ff041
Minor Stream improvements
...
- Unsupported members should throw NotSupportedException instead of
NotImplementedException per MSDN docs for CanRead/CanSeek/CanWrite.
- Position should throw NotSupportedException when CanSeek is false.
- FrameRequestStream.Flush/FlushAsync should not throw
NotImplementedException.
- Use expression-bodied members for CanRead/CanSeek/CanWrite on
FrameRequestStream to match FrameResponseStream.
- Provide no-op override of LibuvStream.FlushAsync to match Flush.
2016-04-25 22:19:30 -07:00
Cesar Blum Silveira
00ee2145fc
Add xproj for Microsoft.AspNetCore.Server.Kestrel.TestCommon.
2016-04-21 14:51:37 -07:00
Cesar Blum Silveira
95722670c1
More robust port assignment for tests.
2016-04-20 17:25:50 -07:00
Cesar Blum Silveira
f29dd60999
Fix connection termination issues when using connection filters ( #737 , #747 ).
...
- If we're done before the client sends a FIN, force a FIN into the raw
SocketInput so the task in FileteredStreamAdapter finishes gracefully
and we dispose everything in proper order.
- If there's an error while writing to a stream (like ObjectDisposedException),
log it once and prevent further write attempts. This means the client closed
the connection while we were still writing output.
- This also fixes a bug related to the point above, where memory blocks were
being leaked instead of returned to the pool (because we weren't catching
the exception from Write()).
2016-04-19 22:04:33 -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
Mike Harder
0453e4af70
Add KestrelServerOptionsSetup before KestrelServerOptions ( #755 ) ( #757 )
...
- Required to ensure that options.ApplicationServices is available after during UseKestrel(options)
2016-04-18 16:57:59 -07:00
Mike Harder
bbf2c83a7d
Add KestrelServerOptionsSetup to IServiceCollection in UseKestrel() ( #755 )
...
- Previously, KestrelServerOptionsSetup was only added to IServiceCollection in UseKestrel(options)
- Required to ensure that options.ApplicationServices is available after calling UseKestrel()
2016-04-18 15:32:09 -07:00
Chris R
c48353f4ef
Hosting#698 Remove IServerFactory
2016-04-15 16:05:01 -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
BrennanConroy
109c56713a
React to logging changes
2016-04-01 11:53:47 -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
Doug Bunting
c828fafe1b
React to HttpAbstractions namespace changes
...
- aspnet/HttpAbstractions#549 and aspnet/HttpAbstractions#592
- clean up `using`s
2016-03-30 16:04:43 -07:00
Mike Harder
088b7e5779
Add UseKestrel() extension method to IWebHostBuilder ( #713 )
2016-03-30 12:08:32 -07:00
Stephen Halter
f0e438f65f
Remove IKestrelTrace.ApplicationError overload without connection id
...
Add test verifying that exceptions thrown from application tcs continuations
run by the LoggingThreadPool don't get logged as general exceptions.
2016-03-30 11:13:13 -07:00
Cesar Blum Silveira
4b214115ca
Proper skip reasons for HttpsConnectionFilter tests ( #677 ).
2016-03-22 18:00:15 -07:00
Stephen Halter
850632a091
Ensure KestrelThreads get stopped in tests if there is a startup failure
2016-03-17 07:44:30 -07:00
Stephen Halter
b55bef20aa
Allow the server to forcefully close socket it tests with connection failures
...
- This is a delayed reaction to 54caf30 which causes connections closed from
the server to be closed less gracefully due to no longer waiting for a FIN
from the client
2016-03-17 07:44:28 -07:00
Cesar Blum Silveira
37b0917ac1
Use TLS 1.1 or 1.2 only ( #637 ).
2016-03-09 12:09:31 -08:00
Stephen Halter
f15471bcf2
Remove 2 from MemoryPool2 and related types
...
- This was merely an artifact from when this was the second of 2 pools
2016-03-03 12:11:25 -08: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
Ben Adams
766803c573
Return 400 for bad requests and close conn
2016-02-27 12:35:12 +00:00
Ben Adams
48d3c63f70
TestHelper classes for shared types
2016-02-26 23:48:52 +00:00
Ben Adams
4bfcd7ba1f
Drain chunked extensions + refactor
2016-02-26 23:48:51 +00:00
Ben Adams
331d4a87ac
Move chunked request tests
2016-02-26 23:48:51 +00:00
Ben Adams
8d8176f14a
Consume chunked request fully
2016-02-26 23:48:49 +00:00
Cesar Blum Silveira
f21cb128e8
Handle 0-byte reads correctly ( #520 ).
2016-02-26 15:21:11 -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
Chris R
aef612bdac
Add IHttpConnectionFeature.ConnectionId.
2016-02-18 11:10:55 -08:00
Cesar Blum Silveira
aa48ad2933
Merge branch 'benaadams/loopback-fastpath' into dev
2016-02-18 10:52:42 -08:00
Stephen Halter
bc56d11d8c
Set IsBackground property to true on libuv Threads for non-debug builds
...
- If libuv doesn't shutdown as expected, the process will still stop. Thanks @benaadams!
- Address other minor PR feedback.
2016-02-17 16:40:05 -08:00
Stephen Halter
04736e1d09
Remove FrameworkSkipConditions for Mono
...
- Maybe things are better now with graceful shutdown *crosses fingers*
2016-02-17 16:05:37 -08:00
Stephen Halter
f4bb8d5eff
Verify that memory pool blocks aren't leaked in tests
2016-02-17 16:05:34 -08:00
Stephen Halter
304016fc3b
Close UvAsyncHandle properly to avoid zombie threads
...
- Even when safe handles are disposed explicitly, ReleaseHandle is sometimes
called on another thread which breaks uv_close.
- Ensure we close the UvAsyncHandle the uv loop so that the second call
to uv_run always completes without a timeout/Thread.Abort.
- Re-enable some tests. Add skip conditions for those that aren't passing.
2016-02-17 16:05:32 -08:00
Stephen Halter
54caf3071c
Close connections as quickly and gracefully as possible on shutdown
...
- Make the time given for requests to complete gracefully configurable.
- Complete all async reads so calling code can re-check whether to stop
request processing and exit if in between requests.
- Don't wait for a FIN from the client since some browsers (e.g. IE & Chrome)
will take a long time to send one.
- Ensure all ConnectionFilters complete before the memory pool is disposed.
- Ensure blocks get returned even when a ConnectionFilter produces a failed read
2016-02-17 16:05:23 -08:00
Ben Adams
ffa8f3f092
Helper function for test socket creation
2016-02-17 03:59:59 +00:00
Ben Adams
020e0b9dc5
Enable TCP Loopback Fast Path (Windows)
...
Enable TCP Loopback Fast Path; where the IP layer is skipped, for lower
latency for localhost comms, like HttpPlatformHandler+IIS reverse proxy
http://blogs.technet.com/b/wincat/archive/2012/12/05/fast-tcp-loopback-performance-and-low-latency-with-windows-server-2012-tcp-loopback-fast-path.aspx
Have to do it this way due to open issue in libuv
Loopback fast path: libuv/libuv#489
Related: "Confirm HttpPlatformHandler uses Fast TCP Loopback"
aspnet/IISIntegration#29
2016-02-14 04:44:20 +00:00
Ben Adams
f8aa1a676a
Pass ServerInformation as property of ServiceContext
2016-02-13 05:51:54 +00:00
Ben Adams
c293bbbd1a
Reuse headers to prevent values moving to higher GC gens
2016-02-13 01:16:17 +00:00
Kiran Challa
dfcd6a6227
Enable tests to run using dotnet xunit runner
2016-02-09 23:48:09 -08:00
Cesar Blum Silveira
6757a31fd2
Build with dotnet ( #571 ).
2016-02-01 14:37:47 -08:00
Cesar Blum Silveira
1209eca3fa
Normalize request path to NFC and resolve dot segments ( #273 ).
2016-01-28 15:29:29 -08:00
Stephen Halter
d616f0ccb0
Fix FindFirstEqualByte tests
...
- On some platforms, the bytes array was not large enough to fill a vector.
Ex: https://travis-ci.org/aspnet/KestrelHttpServer/builds/105277870#L2633
- Additionally test FindFirstEqualByte with only one bit set in the array
2016-01-27 14:32:34 -08:00
Brennan
15ed03eb26
React to Logging API changes
2016-01-27 14:25:52 -08:00
Stephen Halter
a2fe59fb2c
Speed up unit tests
...
- Remove unnecessary uses of Task.Delay
- Change all usages to CancellationToken.None to default(CancellationToken)
for consistency
2016-01-27 13:01:44 -08:00
Ben Adams
00b8a13b55
Merge+rename+rename resolve
2016-01-26 11:33:14 +00:00
Ben Adams
9f2d685cbf
Merge remote-tracking branch 'refs/remotes/aspnet/shalter/always-immediate' into combined-fixes
2016-01-26 02:15:56 +00:00
Stephen Halter
7570da9daa
Flush chunked writes before the entire response completes
...
Ensure chunked writes force an "immediate" write by removing the now
unused immediate parameter from ISocketOutput.Write
2016-01-25 10:34:15 -08:00
Stephen Halter
735c0fbbef
Added new test to verify failed writes complete all pending write tasks
...
- Changed MockLibuv to never fall back to real libuv methods.
- Fixed EngineTests.ConnectionCanReadAndWrite
2016-01-23 10:17:07 +00:00
Ben Adams
a97cb81f92
MockConnection Abort
2016-01-23 10:17:03 +00:00
Ben Adams
73bb0ab5b8
SocketOutput Cancellation handling
2016-01-23 10:17:02 +00:00
N. Taylor Mullen
b062f851dc
Rename AspNet 5 file contents.
...
See https://github.com/aspnet/Announcements/issues/144 for more information.
2016-01-22 12:23:51 -08:00
N. Taylor Mullen
3cfe2f3070
Rename AspNet 5 folders and files.
...
See https://github.com/aspnet/Announcements/issues/144 for more information.
2016-01-22 12:23:44 -08:00
Pranav K
40824999c6
Reacting to CoreCLR package version change
2016-01-20 20:58:22 -08:00
Brennan
63cd6149d1
Removed IsLocal from ConnectionInfo
2016-01-19 08:37:47 -08:00
John Luo
9885377148
Reacting to hosting rename
2016-01-17 16:34:17 -08:00
Stephen Halter
129a5ad474
Bypass LibuvStream if no ConnectionFilter wraps it
2016-01-14 15:28:54 -08:00
Stephen Halter
e5ad019575
Revert "Merge branch 'benaadams/copyfrom-perf' into dev"
...
This reverts commit ce61282320 , reversing
changes made to 7ef70bc145 .
2016-01-14 11:47:23 -08:00
Stephen Halter
ce61282320
Merge branch 'benaadams/copyfrom-perf' into dev
2016-01-12 14:24:35 -08:00
Ben Adams
caaf9d473b
Faster CopyFrom
2016-01-12 21:43:37 +00:00
Stephen Halter
7ef70bc145
Merge branch 'anderman/FindFirstByteFast' into dev
2016-01-12 12:51:50 -08:00
Stephen Halter
ab5ef547e1
Make chunked writes atomic
2016-01-11 16:53:46 -08:00
Thom Kiesewetter
1b09a76ebb
Find First Byte Fast
2016-01-11 08:31:52 +01:00
Cesar Blum Silveira
2ce28d8f13
Verify OnComplete is called when OnStarting isn't ( #470 ).
2016-01-08 11:50:59 -08:00
Stephen Halter
b63dd40efb
Protect SocketInput against concurrent consumption
2016-01-08 11:14:15 -08:00
Stephen Halter
f3a39d98da
Merge branch 'benaadams/socket-input' into dev
2016-01-08 11:12:43 -08:00
John Luo
b826491234
Reacting to new hosting API
2016-01-07 11:54:27 -08:00
Stephen Halter
ffd950966e
Merge branch 'benaadams/string-construct' into dev
2016-01-06 12:14:15 -08:00