true, 'cookie_secure' => !empty($_SERVER['HTTPS']), 'cookie_samesite' => 'Lax', ]); require __DIR__ . '/../vendor/autoload.php'; use DI\Container; use DigiWill\Controllers\UserController; use Slim\Factory\AppFactory; use Slim\Views\Twig; use Slim\Views\TwigMiddleware; use Tests\Fakes\FakeUserRepository; use DigiWill\Repositories\UserRepository; use DigiWill\MiddleWare\AuthMiddleware; $container = new Container([ UserRepository::class => DI\create(FakeUserRepository::class), ]); $app = AppFactory::createFromContainer($container); $twig = Twig::create(__DIR__ . '/../templates', ['cache' => false]); $auth = new AuthMiddleware(); $app->add(TwigMiddleware::create($app, $twig)); $app->addErrorMiddleware(true, false, false); $app->get('/', [UserController::class, 'home']); $app->get('/login', [UserController::class, 'login']); $app->get('/logout', [UserController::class, 'logout']); $app->post('/login', [UserController::class, 'doLogin']); $app->get('/dashboard', [UserController::class, 'dashboard'])->add($auth); $app->run();