public function testMicroStopMiddlewareClasses() { $this->specify("Micro middleware events don't work as expected", function () { $app = new Micro(); $app->map("/api/site", function () { return true; }); $middleware = new \MyMiddlewareStop(); $app->before($middleware); $app->before($middleware); $app->after($middleware); $app->after($middleware); $app->finish($middleware); $app->finish($middleware); $app->handle("/api/site"); expect($middleware->getNumber())->equals(3); }); }