public function testMicroClass()
{
$this->specify("MVC Micro doesn't work as expected", function () {
$handler = new \RestHandler();
$app = new Micro();
$app->get("/api/site", [$handler, "find"]);
$app->post("/api/site/save", [$handler, "save"]);
$app->delete("/api/site/delete/1", [$handler, "delete"]);
//Getting the url from _url using GET
$_SERVER["REQUEST_METHOD"] = "GET";
$_GET["_url"] = "/api/site";
$app->handle();
expect($handler->getNumberAccess())->equals(1);
expect($handler->getTrace())->equals(["find"]);
//Getting the url from _url using POST
$_SERVER["REQUEST_METHOD"] = "POST";
$_GET["_url"] = "/api/site/save";
$app->handle();
expect($handler->getNumberAccess())->equals(2);
expect($handler->getTrace())->equals(["find", "save"]);
//Passing directly a URI
$_SERVER["REQUEST_METHOD"] = "DELETE";
$_GET["_url"] = null;
$app->handle("/api/site/delete/1");
expect($handler->getNumberAccess())->equals(3);
expect($handler->getTrace())->equals(["find", "save", "delete"]);
});
}