Fixed Routes on Tests

main
Robert 3 years ago
parent c182381396
commit 6228982c69
  1. 5
      src/bootstrap/site_helper.php
  2. 20
      src/classes/router.php

@ -218,10 +218,13 @@ final class site_helper {
self::set_params(); self::set_params();
self::set_route(); self::set_route();
if (! defined("PROJECT_ASSETS_BASE_REF")) {
define('PROJECT_ASSETS_BASE_REF', "/assets/" . self::$PRJ); define('PROJECT_ASSETS_BASE_REF', "/assets/" . self::$PRJ);
}
if (! defined("ASSETS_BASE_REF")) {
define('ASSETS_BASE_REF', "/assets/"); define('ASSETS_BASE_REF', "/assets/");
} }
}
public static function set_project_namespace() { public static function set_project_namespace() {
$prj = rtrim(self::$ROOT, '/'); $prj = rtrim(self::$ROOT, '/');

@ -410,13 +410,11 @@ class router
* with a method called get! * with a method called get!
*/ */
private static function get_all_routes(bool $testing = false) { private static function get_all_routes(bool $testing = false) {
$request = trim(self::$REQUEST, '/'); $prj = rtrim(\tts\site_helper::get_project(), '/');
$prj = explode('/', $request)[0]; if (!empty($prj)) {
$safe_prj = \tts\security::filter_class($prj);
if (!empty($safe_prj)) {
$route_name = (\tts\console_app::is_cli()) ? "cli_routes" : "routes"; $route_name = (\tts\console_app::is_cli()) ? "cli_routes" : "routes";
$routes = ($testing) ? "test_routes" : $route_name; $routes = ($testing) ? "test_routes" : $route_name;
$routes_class = "\\prj\\{$safe_prj}\\routes\\{$routes}"; $routes_class = "\\prj\\{$prj}\\routes\\{$routes}";
if (class_exists($routes_class)) { if (class_exists($routes_class)) {
if (method_exists($routes_class, "get")) { if (method_exists($routes_class, "get")) {
@ -430,7 +428,7 @@ class router
/** /**
* Execute router * Execute router
*/ */
public static function execute(): bool { public static function execute() {
$ROOT = \tts\site_helper::get_root(); $ROOT = \tts\site_helper::get_root();
$request_uri = \tts\site_helper::get_uri(); $request_uri = \tts\site_helper::get_uri();
$request_method = \tts\site_helper::get_method(); $request_method = \tts\site_helper::get_method();
@ -537,8 +535,10 @@ class router
// Call action // Call action
if (is_callable($route['action'])) { if (is_callable($route['action'])) {
call_user_func_array($route['action'], $resortedParams); $returned = call_user_func_array($route['action'], $resortedParams);
return ["found"=> true, "returned"=> $returned];
} else if (strpos($route['action'], '@') !== false) { } else if (strpos($route['action'], '@') !== false) {
// call controller // call controller
list($controller, $method) = explode('@', $route['action']); list($controller, $method) = explode('@', $route['action']);
@ -559,12 +559,12 @@ class router
} }
// Call method // Call method
call_user_func_array([$controller, $method], $resortedParams); $returned = call_user_func_array([$controller, $method], $resortedParams);
return ["found"=> true, "returned"=> $returned];
} }
return true; // Worked
} }
} }
return false; return ["found"=>false];
} }
/** /**

Loading…
Cancel
Save