Style/Revamp #4
@@ -3,7 +3,7 @@ import { MemoryRouter, Route, Routes } from "react-router-dom";
|
||||
import { beforeEach, describe, expect, it } from "vitest";
|
||||
import { mockUser } from "../../test/fixtures/user.fixture";
|
||||
import { useAuthStore } from "../store/useAuthStore";
|
||||
import { ProtectedRoute, PublicRoute } from "./RouteGuards";
|
||||
import { ProtectedRoute, AutoRedirectRoute } from "./RouteGuards";
|
||||
|
||||
function renderGuard(ui: React.ReactNode, mountPath: "/protected" | "/public") {
|
||||
return render(
|
||||
@@ -85,9 +85,9 @@ describe("PublicRoute", () => {
|
||||
user: null,
|
||||
});
|
||||
renderGuard(
|
||||
<PublicRoute>
|
||||
<AutoRedirectRoute>
|
||||
<div>Login Page</div>
|
||||
</PublicRoute>,
|
||||
</AutoRedirectRoute>,
|
||||
"/public",
|
||||
);
|
||||
expect(screen.getByText(/Unsealing/i)).toBeInTheDocument();
|
||||
@@ -101,9 +101,9 @@ describe("PublicRoute", () => {
|
||||
user: mockUser,
|
||||
});
|
||||
renderGuard(
|
||||
<PublicRoute>
|
||||
<AutoRedirectRoute>
|
||||
<div>Login Form</div>
|
||||
</PublicRoute>,
|
||||
</AutoRedirectRoute>,
|
||||
"/public",
|
||||
);
|
||||
expect(screen.getByText("Drawer Page")).toBeInTheDocument();
|
||||
@@ -117,9 +117,9 @@ describe("PublicRoute", () => {
|
||||
user: null,
|
||||
});
|
||||
renderGuard(
|
||||
<PublicRoute>
|
||||
<AutoRedirectRoute>
|
||||
<div>Login Form</div>
|
||||
</PublicRoute>,
|
||||
</AutoRedirectRoute>,
|
||||
"/public",
|
||||
);
|
||||
expect(screen.getByText("Login Form")).toBeInTheDocument();
|
||||
|
||||
@@ -22,10 +22,10 @@ export function ProtectedRoute({ children }: { children: React.ReactNode }) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Public - auth route guard.
|
||||
* Auto-redirect - auth route guard.
|
||||
* If authenticated, redirect all the auth related flows to the drawer
|
||||
*/
|
||||
export function PublicRoute({ children }: { children: React.ReactNode }) {
|
||||
export function AutoRedirectRoute({ children }: { children: React.ReactNode }) {
|
||||
const { isAuthenticated, isInitializing } = useAuth();
|
||||
|
||||
if (isInitializing) return <SplashScreen />;
|
||||
|
||||
Reference in New Issue
Block a user