Commit Graph

93 Commits

Author SHA1 Message Date
PJ Dietz 8649090774 Fix visibility for setUp, tearDown to match PHPUnit base class 2020-08-13 07:13:14 -04:00
PJ Dietz cd2e4448e2 Update CS rules 2020-08-11 06:41:48 -04:00
PJ Dietz 002bdb7541 Convert simple string literals to single quotes 2020-08-10 07:13:50 -04:00
PJ Dietz fb18d2ee1e Code style fixes 2020-08-10 07:09:48 -04:00
PJ Dietz ca204a07e7 Add type hints to Router 2020-08-09 14:27:29 -04:00
PJ Dietz 967b6ac2a4 Add type hints for Routes 2020-08-09 13:58:24 -04:00
PJ Dietz 4485675c11 Use ProphecyTrait in tests with Prophecy mocks 2020-08-08 10:59:46 -04:00
Joe Ginley 17c58ae362 Added php minimum version badge and removed the requirements text.
Updated composer libraries, fixed phpunit errors after updating.
Updated docker-compose version.
Updated docker to use php 7.4.
2020-02-04 00:05:42 -05:00
PJ Dietz 645bcf227c Upgrade PHPUnit to v8 2019-06-17 16:04:55 -04:00
PJ Dietz e676a17cac Rename Router->addMiddleware to Router->add 2018-06-29 16:29:46 -04:00
PJ Dietz 677cdb4d7d Change Router::continue to Router::continueOnNotFound; update docs 2018-06-28 16:52:36 -04:00
PJ Dietz 0a0d3c3bc9 Router responds 404 by default for non-matched routes 2018-06-28 09:46:59 -04:00
PJ Dietz de46c8e089 Rework Server to be configured with setters 2018-06-25 15:46:37 -04:00
PJ Dietz 64628c4065 Move MethodMap to Route namespace 2018-06-22 15:54:01 -04:00
PJ Dietz ac8bdce037 Remove MethodMapInterface 2018-06-22 15:10:50 -04:00
PJ Dietz 73b6e4ab83 Router registers handlers directly with routes 2018-06-22 14:53:03 -04:00
PJ Dietz 9b29f2a09e Add Route::register method to delegate to MethodMap 2018-06-22 14:44:43 -04:00
PJ Dietz 9aab0d780e Router can provide middleware called only for matched routes. 2018-06-21 16:00:11 -04:00
PJ Dietz 29cad3687e Router delegates on failure and does not return 404 2018-06-21 12:48:11 -04:00
PJ Dietz 50f1004be5 Test cleanup 2017-08-03 14:29:54 -04:00
PJ Dietz 36a170bcff Upgrade PHPUnit to ^6 2017-07-22 15:21:41 -04:00
PJ Dietz 92294a2e67 Move doubles to Doubles namespace 2016-05-21 12:08:17 -04:00
PJ Dietz b3dc82e744 Refactor router test 2016-05-21 11:05:35 -04:00
PJ Dietz 91249d885f MethodMap tests use Dispatcher and MiddlewareMock; rename NextMock 2016-05-21 10:16:22 -04:00
PJ Dietz f9ab311b79 MethodMap test uses ServerRequest and NextSpy 2016-05-21 09:48:44 -04:00
PJ Dietz 4eb0b2641e Use ServerRequest instance in MethodMap test 2016-05-21 08:46:13 -04:00
PJ Dietz 36bb00dc1a Refactor route tests 2016-05-21 08:45:55 -04:00
PJ Dietz 139e3c43da Template Routes do not match slash prefix variables that contain slashes as the non-first character 2015-05-25 10:17:42 -04:00
PJ Dietz dedec4ec4e Router stores path variables directly as attributes by default. 2015-05-19 21:06:50 -04:00
PJ Dietz ac2ed4a24a Router stops propagating on 404, 405, and OPTIONS 2015-05-19 19:12:12 -04:00
PJ Dietz a825654336 Refactor MiddlewareInterface::dispatch to MiddlewareInterface::__invoke 2015-05-19 18:35:29 -04:00
PJ Dietz 15602d8e97 Remove suppression operator from RegexRoute 2015-05-15 19:11:43 -04:00
PJ Dietz 1be4ff7691 Router uses only the request's path for routing 2015-05-13 21:53:33 -04:00
PJ Dietz 3b18d1dcdb Router reads path variables from route and adds them to request before dispatching route 2015-05-13 21:53:33 -04:00
PJ Dietz 6232f67b9c Update RouteInterface and routes 2015-05-13 21:53:33 -04:00
PJ Dietz 61fd0f3354 TemplateRoute more throughly implements URI Templates as defined in RFC 6570
Template support:
- Simple strings /{var}
- Reserved string /{+var}
- Multiple variables per expression /{hello,larry}
- Dot-prefixes /{.filename,extension}
- Slash-prefiex {/path,to,here}
- Explosion {/paths*}, /cats/{ids*} explode to list arrays
2015-05-13 21:53:27 -04:00
PJ Dietz 1bb93434b2 Store variables from URI as uriVariables attributes 2015-05-12 17:58:35 -04:00
PJ Dietz b198e83d55 Add Responder namespace
Move ContentLength and Head middleware to Resonder\Middleware
2015-05-10 16:59:50 -04:00
PJ Dietz f849a6ff89 Router optionally takes a DispatcherInterface on construction 2015-05-10 14:32:43 -04:00
PJ Dietz 3786cfaade Passing array to Router::register as middleware creates a DispatchStack 2015-05-10 12:15:39 -04:00
PJ Dietz 6507028dd3 Pass DispatchProvider to Router on construction 2015-05-10 12:04:36 -04:00
PJ Dietz 37af085ec5 Pass DispatcherInterface to RouteFactory on construction 2015-05-10 11:46:51 -04:00
PJ Dietz 87caa09b61 Pass DispatcherInterface into MethodMap on construction 2015-05-10 11:41:02 -04:00
PJ Dietz ec091b34c4 Fix paths and namespaces for Dispatching tests 2015-05-10 11:25:02 -04:00
PJ Dietz 8071b0b5db Move MiddlewareInterface to the root namespace. 2015-05-10 11:21:55 -04:00
PJ Dietz bbb138996a Add Dispatching namesapce 2015-05-10 11:02:59 -04:00
PJ Dietz 560b1e8ff0 Add DispatchStack 2015-05-10 10:30:22 -04:00
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