PJ Dietz
2adcbd8636
Remove Router and rename RouteMap to Router
...
Remove Router
Remove RouterInterface
Rename RouteMapInterface to RouterInterface
Rename RouteMap to Router
Rename add() to register()
Make register fluid
2015-05-10 09:05:05 -04:00
PJ Dietz
b0db3cbcdd
MethodMap::dispatch calls $next even on failure
2015-05-10 09:05:05 -04:00
PJ Dietz
9470f90ee2
RouteMap::dispatch calls $next even on failure
2015-05-10 09:05:05 -04:00
PJ Dietz
c1a104af4f
Update HeadHook
2015-05-10 09:05:05 -04:00
PJ Dietz
06f694154c
Update ContentLengthHook
2015-05-10 09:05:05 -04:00
PJ Dietz
5a01d20f8e
Update RouteMap to match updated MiddlewareInterface
2015-05-10 09:05:05 -04:00
PJ Dietz
36263ba3de
Update routes to match new MiddlewareInterface
2015-05-10 09:05:05 -04:00
PJ Dietz
72767b74e8
Rename MethodMap::setMethod to ::register
2015-05-10 09:05:05 -04:00
PJ Dietz
d8352e71d9
Update MethodMap to match new MiddlewareInterface
2015-05-10 09:05:05 -04:00
PJ Dietz
a0e4ace6a5
Update Dispatcher
2015-05-10 09:05:00 -04:00
PJ Dietz
1d30fcbbba
Remove RouteTable, revise RouteFactory,
2015-05-08 01:03:07 -04:00
PJ Dietz
09ea17d349
Update TemplateRoute
2015-05-08 00:25:15 -04:00
PJ Dietz
8f4165cdb6
Revise RegexRoute
2015-05-07 23:56:47 -04:00
PJ Dietz
cfcc3b9690
Revise PrefixRoute
2015-05-07 23:30:42 -04:00
PJ Dietz
86d36e8c15
Revise StaticRoute
2015-05-07 23:25:08 -04:00
PJ Dietz
58b5107289
Revise Route
2015-05-07 23:14:48 -04:00
PJ Dietz
7a53a02c5f
RouteMap: Remove check for captures (push this into regex route's dispatch)
2015-05-07 22:49:39 -04:00
PJ Dietz
1a49a4ac6c
RouteMap routes patterns
2015-05-07 22:01:11 -04:00
PJ Dietz
d5eb044169
Begin RouteMap
2015-05-07 21:36:54 -04:00
PJ Dietz
66319218cb
Test Router's default finalization hooks and sequence in which router dispatches middleware
2015-05-07 19:36:33 -04:00
PJ Dietz
9915dffcfc
Update finalization hooks.
2015-05-07 18:23:44 -04:00
PJ Dietz
ccbe8bb2e0
Rework MethodMap
2015-05-07 18:02:13 -04:00
PJ Dietz
7cbbe6d7c5
Revise DispatchterTest
2015-05-07 07:42:46 -04:00
PJ Dietz
ec7dceac98
Rework Router
2015-05-07 07:42:39 -04:00
PJ Dietz
9083f2a444
Rewrite RouterTest
2015-05-03 21:05:21 -04:00
PJ Dietz
b523f2e79d
Remove copy-paste comment from ServerRequestTest
2015-05-03 19:37:25 -04:00
PJ Dietz
147ddd0539
Add ContentLengthPrep
2015-05-03 18:11:23 -04:00
PJ Dietz
559044a82f
Add HeadPrep
2015-05-03 16:54:03 -04:00
PJ Dietz
e1058a4132
Remove sublcass from ServerRequestTest
2015-05-02 16:07:15 -04:00
PJ Dietz
8462e2effc
Style, documentation, and test name updates
2015-05-02 15:15:13 -04:00
PJ Dietz
f98ee59e4a
Refactor validation for withUploadedFiles
2015-05-02 13:46:32 -04:00
PJ Dietz
81055c3bd9
Update ServerRequest:: addUploadedFilesToBranch to allow associate array at last level of $_FILES
2015-05-02 13:27:38 -04:00
PJ Dietz
a93b37a548
Update UploadedFile's tests for SAPI and use of *_uploaded_file functions
2015-05-02 10:11:08 -04:00
PJ Dietz
257f2b7610
Update uploaded file functionality in ServerRequest
2015-04-30 22:10:40 -04:00
PJ Dietz
b76883c9e9
Update reading $_FILES to UploadedFiles to conform to updates to PSR-7
2015-04-30 20:45:26 -04:00
PJ Dietz
adf8def961
Update docblocks for Message namespace
2015-04-29 21:09:05 -04:00
PJ Dietz
086b09db4f
Changes to match updates to PSR-7 in progress
2015-04-29 18:32:13 -04:00
PJ Dietz
2e7783d19d
Message::getHeaderLine returns an empty string when the header is not set.
2015-04-29 07:42:40 -04:00
PJ Dietz
5eb30ccafb
Rename UploadedFile::move to moveTo
2015-04-29 07:21:56 -04:00
PJ Dietz
af9fbf9c50
Refactor constructor parameters for headers and body to Message
2015-04-27 11:46:36 -04:00
PJ Dietz
cee55cada0
Add parameters for Request::__construct
2015-04-26 22:55:48 -04:00
PJ Dietz
4d5430e589
Add parameters to Response::__construct
2015-04-26 22:55:27 -04:00
PJ Dietz
1b0fccfe0e
ServerRequest::getServerRequest builds URI
2015-04-26 22:13:33 -04:00
PJ Dietz
4f667f1dda
Streams throw exceptions instead of returning false.
2015-04-26 20:49:59 -04:00
PJ Dietz
dce4bdf572
ServerRequest provides proper defaults and throws exception for bad parsed body
2015-04-26 20:08:13 -04:00
PJ Dietz
534bd43d9b
Request::getUri always returns a URI
2015-04-26 19:41:23 -04:00
PJ Dietz
212bb6871e
Message::withHeader and withAddedHeader accept string or string[] as the second parameter.
2015-04-26 19:01:59 -04:00
PJ Dietz
f706d47c6d
Update Request to implement changes to PSR-7 PR #523
2015-04-26 16:05:46 -04:00
PJ Dietz
43c050ec2e
Implement ServerRequest::withUploadedFiles
2015-04-26 15:32:33 -04:00
PJ Dietz
3686e3b1b2
ServerRequest parses uploaded files
2015-04-26 12:20:24 -04:00
PJ Dietz
a254c69607
Reorganize ServerRequest and test
2015-04-26 11:21:55 -04:00
PJ Dietz
26d71bd792
Add UploadedFile
2015-04-23 21:53:54 -04:00
PJ Dietz
2e2b9d57c0
Uri parses string on construction
2015-04-21 15:15:53 -04:00
PJ Dietz
0fabbc5cb1
Add Uri::__toString
2015-04-19 20:59:49 -04:00
PJ Dietz
7dfa3facc1
Add Uri (Partially complete)
2015-04-19 19:07:25 -04:00
PJ Dietz
8c4b59c525
Update composer, phpunit configuration, and remove apache_request_headers
2015-04-16 19:02:43 -04:00
PJ Dietz
408d82fb73
Move Stream classes into Message namespace
2015-04-15 19:39:53 -04:00
PJ Dietz
6b20d1ea96
Update based on changes to PSR-7
2015-04-15 19:34:33 -04:00
PJ Dietz
4a75f4e3a6
Update tests to to avoid passing a reveal() return value by reference.
2015-04-13 19:46:03 -04:00
PJ Dietz
b14641d2f4
Add bootstrap and set error reporting to E_STRICT
2015-04-13 19:17:08 -04:00
PJ Dietz
5ef74f8b89
Remove old files
2015-04-12 18:40:25 -04:00
PJ Dietz
4dba068f3d
Update to match revisions to PSR-7
2015-04-12 18:13:17 -04:00
PJ Dietz
79be20c826
ServerRequest::getServerRequest reads method, request target, and protocol version from request.
2015-04-12 14:17:12 -04:00
PJ Dietz
963e1acd58
Add pre- and post-route hooks to Router
2015-04-12 13:51:49 -04:00
PJ Dietz
b0a0f5262e
Remove old files
2015-04-12 13:51:16 -04:00
PJ Dietz
4096295421
Stream can be created with a string as well as resource handle.
2015-04-12 13:10:40 -04:00
PJ Dietz
6e83b6b050
Add Router::respond
2015-04-12 11:49:48 -04:00
PJ Dietz
90b9503c72
Add ResponderInterface and add setter for chunk site to Responder
2015-04-12 10:07:01 -04:00
PJ Dietz
df8e274f26
Add Responder
2015-04-10 00:15:35 -04:00
PJ Dietz
15ddaa1dd2
Allow null reason phrase
2015-04-10 00:13:54 -04:00
PJ Dietz
9c768793db
Test apache_request_headers in ServerRequestTest
2015-04-09 20:57:20 -04:00
PJ Dietz
dea577fdb4
Add NullStream
2015-04-07 21:35:02 -04:00
PJ Dietz
cbeadbda53
Use fstat to read the size of the resource in Stream
2015-04-07 21:34:57 -04:00
PJ Dietz
cb87660548
Add RouteFactoryInterface
2015-04-06 20:24:40 -04:00
PJ Dietz
6d9adfc7ee
Update Template Route to accept one parameter for the default variable pattern or map of patterns
2015-04-06 19:55:04 -04:00
PJ Dietz
d66ba80ec9
Allow Router to assign middleware to MethodMap
2015-04-06 19:12:59 -04:00
PJ Dietz
0d204d9279
Add MethodMap
...
MethodMap::add adds each comma-separated method for one middleware
Fix name for MethodMapTest
2015-04-06 19:12:57 -04:00
PJ Dietz
decf712354
Add Router
2015-04-03 06:35:47 -04:00
PJ Dietz
57271fa19f
Add RouteFactory
2015-04-02 22:15:07 -04:00
PJ Dietz
918e33bd0a
Add RouteTable
2015-04-02 21:49:01 -04:00
PJ Dietz
e4ef1a8cb3
Add TemplateRoute
2015-04-02 20:53:54 -04:00
PJ Dietz
c82acfa380
Add RegexRoute
2015-04-02 20:21:49 -04:00
PJ Dietz
d367f1de79
Add Static- and PrefixRoutes
2015-04-02 20:10:13 -04:00
PJ Dietz
506c37ffdd
Add MiddlewareInterface and Dispatcher
2015-04-02 20:09:42 -04:00
PJ Dietz
bd5902415a
Rename StreamStream Stream
2015-04-02 18:45:11 -04:00
PJ Dietz
4502df5c1c
ServerRequest creates stream wrapping php://input for body on creation
2015-04-02 18:42:05 -04:00
PJ Dietz
a5cb481d79
Add StringStream
2015-03-25 21:52:52 -04:00
PJ Dietz
a6b8a11cde
Add StreamStream
2015-03-25 21:40:52 -04:00
PJ Dietz
64e5786537
Remove old ApacheRequestHeadersTest
2015-03-24 20:34:34 -04:00
PJ Dietz
f3e5cddf4a
Remove RouteBuilder and ParseException
2015-03-24 20:33:34 -04:00
PJ Dietz
51e1be92fd
Allow passing attributes into ServerRequest::getServerRequest
...
Remove other methods relating to the server request.
2015-03-24 20:29:14 -04:00
PJ Dietz
166fc66117
Assign $_POST to parsedBody on creation if form content header is set.
2015-03-24 19:37:36 -04:00
PJ Dietz
fcbdd1ebfb
Read headers in ServerRequest
...
- Add withServerRequest
- Add updateWithServerRequest
- Add getServerRequestHeaders
2015-03-22 21:10:54 -04:00
PJ Dietz
513db2def1
Add Message\ServerRequest
2015-03-22 20:42:09 -04:00
PJ Dietz
734c87188f
Style fixes for Message and MessageTest
2015-03-22 18:03:21 -04:00
PJ Dietz
292e213c0a
Add Message\Request
2015-03-22 18:02:36 -04:00
PJ Dietz
9da0780875
Move old integration tests
2015-03-22 14:57:12 -04:00
PJ Dietz
197ea3000a
Add Message\Response
2015-03-22 14:56:08 -04:00
PJ Dietz
60b309a3d1
Add Message\Message
2015-03-22 14:03:31 -04:00
PJ Dietz
b6df67afd0
Add Iterator to HeaderCollection
2015-03-22 14:03:18 -04:00
PJ Dietz
2575bc743e
Refactor HeaderCollection to store headers as string[] instead of Header[]
...
Remove Header
Move Header out of own namespace to Message
2015-03-22 12:05:48 -04:00
PJ Dietz
a2ae6fff7d
Cloning a HeaderCollection yields deep copies of the Headers.
2015-03-22 11:36:06 -04:00
PJ Dietz
465425f01f
Move old tests from test/old
2015-03-22 11:35:04 -04:00
PJ Dietz
de9d75fdfc
Fix namespace on Message\Header\HeaderCollection test
2015-03-22 10:15:24 -04:00
PJ Dietz
9d7030faa0
Fix namespace on Message\Header test
2015-03-22 10:14:59 -04:00
PJ Dietz
3ab7c55257
Add Message\Header\HeaderCollection
2015-03-22 09:38:18 -04:00
PJ Dietz
ba26379fdc
Add Message\Header\Header
2015-03-22 09:16:17 -04:00
PJ Dietz
381310a88a
Exclude integration tests from code coverage
2015-03-11 21:33:59 -04:00
PJ Dietz
f08691fff1
Allow template variables to be named as alpha followed by alphanumeric and underscore.
2015-03-08 14:59:32 -04:00
PJ Dietz
fdeff57a79
Prevent Router from trying to call respond on non responses.
2015-02-22 17:17:56 -05:00
PJ Dietz
1a5712a417
Split tests into unit and integration test suites
2015-02-22 14:05:05 -05:00
PJ Dietz
812012bdbf
Propagate $request and $args to route and errorHandler callables
2015-02-22 12:01:21 -05:00
PJ Dietz
d785e21fee
Propagate arguments to callable in HandlerUnpacker::unpack
2015-02-22 09:08:15 -05:00
PJ Dietz
64ef9cc4e7
Update copyright and rename a couple tests
2015-02-21 16:01:06 -05:00
PJ Dietz
b582fcf546
Deprecate RouteBuilder
2015-02-21 15:59:27 -05:00
PJ Dietz
614da5f2ff
Update tests for messages.
2015-02-21 15:59:08 -05:00
PJ Dietz
d4ad282abc
Update tests for Client and Handler
2015-02-21 14:51:42 -05:00
PJ Dietz
5dacb232ec
Updates to Router
...
- Add Router::add method
- Refactor Router to contain one RouteTable
2015-02-21 14:11:53 -05:00
PJ Dietz
259dd0baa1
Remove RouteTable::addRoutes
2015-02-21 08:14:38 -05:00
PJ Dietz
1c82908eeb
Refactor Router to use RouteTables
2015-02-21 08:10:58 -05:00
PJ Dietz
14195355e3
Add RouteTable
2015-02-21 07:13:09 -05:00
PJ Dietz
3d68a0af86
Add RouteFactory
2015-02-20 07:45:39 -05:00
PJ Dietz
04561076d5
Update Router to work with updated Routes and ErrorHandlers
...
Deprecate:
- Router::setStaticRoute
- Router::setPrefixRoute
2015-02-19 22:04:34 -05:00
PJ Dietz
4deac492dd
Update BaseRoute to use HandlerUnpacker
2015-02-19 19:59:33 -05:00
PJ Dietz
5dc5cdab06
Add HandlerUnpacker
2015-02-19 19:51:42 -05:00
PJ Dietz
d34607a0d9
Update TemplateRoute test
2015-02-18 21:54:58 -05:00
PJ Dietz
deff504942
Update BaseRoute test
2015-02-18 21:54:25 -05:00
PJ Dietz
c38659a310
Update TemplateRoute tests
2015-02-18 21:39:07 -05:00
PJ Dietz
6859bd9707
Update RegexRoute tests
2015-02-18 21:21:56 -05:00
PJ Dietz
1b17ef5d0a
Revise BaseRoute tests
2015-02-18 20:48:12 -05:00
PJ Dietz
63fd00fff0
Update PrefixRoute tests
2015-02-18 20:47:45 -05:00
PJ Dietz
38aaf26943
Update StaticRoute tests to use Prophecy
2015-02-18 20:47:00 -05:00
PJ Dietz
9498542f30
Allow Route target to be a callable, string, or instance
2015-02-18 20:17:09 -05:00
PJ Dietz
38639d9ee4
Update TemplateRouter to better match templates with variables in more complicated paths
2015-02-02 17:08:25 -05:00
PJ Dietz
bcaa0ee7b7
Use random ports for Client test to reduce false errors on Travis
2015-01-21 13:49:17 -05:00
PJ Dietz
84044d5057
Re-add converting HttpExceptions to responses in Handler
2015-01-21 11:03:01 -05:00
PJ Dietz
1a88e0273d
Use registered 404 error handler when no route matches in Router::respond
2015-01-21 09:51:14 -05:00
PJ Dietz
ca2c8625ec
Store PrefixRoutes to a separate array.
...
Prioritize routes in the order static, prefix, everything else.
2015-01-02 13:13:08 -05:00
PJ Dietz
caef817535
Do not allow routing to continue after a dispatched StaticRoute returns null
2015-01-02 12:31:02 -05:00
PJ Dietz
78fe57d736
Store StaticRoutes to separate hash array in Router
...
Add StaticRouteInterface
2015-01-02 12:00:30 -05:00
PJ Dietz
666f45977e
Merge branch 'eatonphil-master' into prefix
2015-01-01 12:43:41 -05:00
PJ Dietz
9eec436ad4
Add error handlers to Router
...
Move catching HttpExceptions and translating into responses from Handler to Router
2015-01-01 12:41:53 -05:00
PJ Dietz
6d499a6643
Add PrefixRoute
2014-12-29 13:09:51 -05:00
PJ Dietz
8b5f9e40a6
Update phpunit. Allow setting port for ClientTest as an environment variable.
2014-12-29 12:49:38 -05:00
PJ Dietz
75088499b8
Ensure $args propagate from Router to Handlers
2014-08-02 17:42:16 -04:00
PJ Dietz
512897effd
Prefer apache_request_headers when reading request headers.
...
Apache does not pass the Authorization header through to PHP as
$_SERVER["HTTP_AUTHORIZATION"], so reading from $_SERVER is not viable
with Apache.
2014-07-28 12:43:29 -04:00
PJ Dietz
d1a77c5454
Allow * wildcard at end of URI template
2014-07-27 16:37:24 -04:00
PJ Dietz
1c5d95e727
Router::getResponse() now returns null to allow better nesting
...
Runs tests that output responses in process isolation
2014-07-26 19:05:38 -04:00
PJ Dietz
c8a65f4248
Test captures groups in RegexRouteTest
2014-07-26 14:57:31 -04:00
PJ Dietz
4db7c8da7d
Add Request::getFormFields. Add Test for sending form-encoded request
2014-07-26 11:49:15 -04:00