Commit Graph

246 Commits

Author SHA1 Message Date
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
PJ Dietz 297c4aa2e8 Update tests for Routes 2014-07-26 06:15:17 -04:00
PJ Dietz ea05633dfb Update RouterTest 2014-07-26 05:48:54 -04:00
PJ Dietz 4d31e2e977 Update ResponseBuilder tests. Fix name of ResponseTest 2014-07-26 05:36:42 -04:00
PJ Dietz 1222e61ebb Update Handler tests 2014-07-26 05:20:22 -04:00
PJ Dietz 4ae6e5f2e4 Fix issue in Response when setting headers in constructor
Update tests for Response
2014-07-26 01:47:05 -04:00
PJ Dietz 69b9bb51aa Rewrite RequestTest 2014-07-26 01:21:09 -04:00
PJ Dietz 2d9373e287 Test cURL errors in Client 2014-07-25 23:35:17 -04:00
PJ Dietz c9c21fd22e Test custom cURL options in Client 2014-07-25 23:27:24 -04:00
PJ Dietz 3d44d1a3f5 Test sending body with Client 2014-07-25 23:08:27 -04:00
PJ Dietz 832e849875 Test Client headers 2014-07-25 22:39:32 -04:00
PJ Dietz 5e9980f864 Write test to check if Client send method properly 2014-07-25 22:25:59 -04:00
PJ Dietz 1a21b2b7d0 Add Client class
Move Request::request() to Client::request()
2014-07-24 20:41:32 -04:00
PJ Dietz ad1e5a1782 Add tests for Handler 2014-07-14 01:01:51 -04:00
PJ Dietz ecb58c11b8 Clean up unused imports 2014-07-14 01:00:38 -04:00
PJ Dietz b601c38d36 Add tests for Router 2014-07-14 00:19:04 -04:00
PJ Dietz efd1843603 Remove output buffering functions from setup() and tearDown() 2014-07-14 00:18:54 -04:00
PJ Dietz 794d0901b9 Fix documentation and add tests for Response 2014-07-13 23:56:19 -04:00
PJ Dietz 581c3d1351 Update documentation and add tests for Request 2014-07-13 21:39:01 -04:00
PJ Dietz 6a642dfed2 Fix documentation and add tests for BaseRoute 2014-07-13 17:18:08 -04:00
PJ Dietz e597926634 Fix documentation and add tests for TemplateRoute 2014-07-13 17:08:15 -04:00
PJ Dietz f11c13c1b3 Fix documentation and add tests for RegexRoute 2014-07-13 16:27:09 -04:00
PJ Dietz 921d84cf8b Update StaticRoute documentation and add tests 2014-07-13 15:50:30 -04:00
PJ Dietz 97836e7fa0 100% on RouteBuilder 2014-07-13 14:50:23 -04:00
PJ Dietz 18d3d6c9db Update RouteBuilder docs and add test
- Remove RouteBuilder::buildRoutesFromJson()
- Allow RouteBuilder::buildRoutes() to parse JSON
- Add PHPUnit
- Add tests for RouteBuidler
- Update docs for RouteBuilder
- Update README RouteBuilder example
- Rename constant in BaseRoute
2014-07-13 14:29:37 -04:00