* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class FilterChainTest extends TestCase { public function testFilterChain() { $request = new Request(new Uri('/'), 'GET'); $response = new Response(); $chain = new FilterChain(); $chain->on(function(RequestInterface $request, ResponseInterface $response, FilterChainInterface $filterChain){ $request->setAttribute('closure', true); $filterChain->handle($request, $response); }); $chain->on(new TestFilter()); $chain->handle($request, $response); $this->assertSame(true, $request->getAttribute('closure')); $this->assertSame(true, $request->getAttribute('class')); } public function testFilterChainInvalid() { $this->expectException(\InvalidArgumentException::class); $chain = new FilterChain(); $chain->on(new \stdClass()); } } __halt_compiler();----SIGNATURE:----TQJzgPhep0a0VZAm88LlVQ6awHYz4ep/hJzWZkYZk5SC5rUefO/lqjHDGZ9LcuAatdunyu5mJWmmQLd4YCMGWLMIpa6CLXaRohNnQmI+cCDUrkMExno6Nj2wzq7lNUHaCytMm28G+llroNtjFXiCX/K/DPMMRaw5b5SmGr9aF9v/6vPdEY3i9bkKTuVEX/8nJWrCvaOE6oecGcTz2QAmjymwyZM1FvNXEOLsyQEOA0xTzQsMJ8U3YyRHZswCP1VobsCYRvaJj6SWgBYyTfNjl2qxGnIl2+26VUP5ykSADZz0W10sFet/1VkLxOPRhBUi2yPm4br0dUNS56m5LFrBeVk0UmJV3igLPZb9vgP0fkI39yiE5fuK9vNXrcQRcnQ0m4dzG/wMFkabjC73xnQVocpUtSk+h8+BppQz9lL+1smnqsgOq+yvH/WtjmJMhoShNGlqeqxWZW2h6pArp8V8NDvg6/zhMmsMDPhcUtUddQE5OIsXwdrF9VF04G7gYoTaYvOic7GdjQ/tLEfLip86KUw6C5l17j9hBDSrKeEajPXVv6xJQpmbxaRa8/CRBc1r+BCdSNGALRQ9Jt3I3fEpVUiqOw35CibU0xqW0JWMwtKej49d2EOBmW0yqJ5MR9w4ZDka5jA7fmGBU9wkHSjZOnePOPJsrfIxfMbwv59Uzg0=----ATTACHMENT:----MjUzNDYwMTU0NDcyNzIzNyA1NTA4MTA2MTM5NzgyNTk0IDUxNjI4ODAyMTI2MzU2Njk=