diff --git a/composer.json b/composer.json
index 8332e94..5a98697 100644
--- a/composer.json
+++ b/composer.json
@@ -55,7 +55,8 @@
"scripts": {
"test": "phpunit",
"test-coverage": "rm clover.xml && XDEBUG_MODE=coverage vendor/bin/phpunit --coverage-html=coverage --coverage-clover=clover.xml && vendor/bin/coverage-check clover.xml 100",
- "test-server": "echo \"Running Test Server\" && COMPOSER_PROCESS_TIMEOUT=60000 php -S localhost:8000 -t tests/server/",
+ "test-server": "echo \"Running Test Server\" && php -S localhost:8000 -t tests/server/",
+ "test-server-v2": "echo \"Running Test Server\" && php -S localhost:8000 -t tests/server-v2/",
"test-coverage:win": "del clover.xml && phpunit --coverage-html=coverage --coverage-clover=clover.xml && coverage-check clover.xml 100",
"lint": "phpstan --no-progress -cphpstan.neon",
"beautify": "phpcbf --standard=phpcs.xml",
diff --git a/tests/server-v2/index.php b/tests/server-v2/index.php
new file mode 100644
index 0000000..547a1f9
--- /dev/null
+++ b/tests/server-v2/index.php
@@ -0,0 +1,175 @@
+Route text: Root route works!';
+});
+Flight::route('/querytestpath', function(){
+ echo 'Route text: This ir query route
';
+ echo "I got such query parameters:
"; + print_r(Flight::request()->query); + echo ""; +},false,"querytestpath"); + +// Test 2: Simple route +Flight::route('/test', function(){ + echo 'Route text: Test route works!'; +}); + +// Test 3: Route with parameter +Flight::route('/user/@name', function($name){ + echo "Route text: Hello, $name!"; +}); +Flight::route('POST /postpage', function () { + echo 'Route text: THIS IS POST METHOD PAGE'; +},false,"postpage"); + +// Test 4: Grouped routes +Flight::group('/group', function(){ + Flight::route('/test', function(){ + echo 'Route text: Group test route works!'; + }); + Flight::route('/user/@name', function($name){ + echo "Route text: There is variable called name and it is $name"; + }); + Flight::group('/group1', function(){ + Flight::group('/group2', function(){ + Flight::group('/group3', function(){ + Flight::group('/group4', function(){ + Flight::group('/group5', function(){ + Flight::group('/group6', function(){ + Flight::group('/group7', function(){ + Flight::group('/group8', function(){ + Flight::route('/final_group', function(){ + echo 'Mega Group test route works!'; + },false,"final_group"); + }); + }); + }); + }); + }); + }); + }); + }); +}); + +// Test 5: Route alias +Flight::route('/alias', function(){ + echo 'Route text: Alias route works!'; +}, false, 'aliasroute'); +class authCheck { + public function before(){ + if(!isset($_COOKIE['user'])){ + echo 'Middleware text: You are not authorized to access this route!'; + } + } +} +$middle = new authCheck(); +// Test 6: Route with middleware +Flight::route('/protected', function(){ + echo 'Route text: Protected route works!'; +})->addMiddleware([$middle]); + +// Test 7: Route with template +Flight::route('/template/@name', function($name){ + Flight::render('template.php', ['name' => $name]); +}); +Flight::set('flight.views.path', './'); +Flight::map('error', function (Throwable $error) { + echo "
'; + echo str_replace(getenv('PWD'),"***CLASSIFIED*****",$error->getTraceAsString()); + echo ""; + echo "Go back"; +}); +Flight::map('notFound', function() { + echo 'Route text: The requested URL was not found'; + echo "Go back"; +}); +echo ' + +
"; + print_r(Flight::request()); + echo ""; + echo "