-
-
- {subtitle}
-
-
{content}
+ <>
+
+ {watermark}
+
+
+
+ {subtitle}
+
+ {content}
+
-
{content} (Back)
-
- >
+
{content} (Back)
+
+ >
);
}
diff --git a/frontend/src/components/TopMenu.test.tsx b/frontend/src/components/TopMenu.test.tsx
index 73e24d4..d5925e0 100644
--- a/frontend/src/components/TopMenu.test.tsx
+++ b/frontend/src/components/TopMenu.test.tsx
@@ -1,17 +1,29 @@
-// __tests__/TopMenu.test.tsx
import { fireEvent, render, screen, waitFor } from "@testing-library/react";
import "@testing-library/jest-dom";
import React from "react";
-import TopMenu from "./TopMenu"; // Adjust the import path as necessary
+import TopMenu from "./TopMenu";
import { BrowserRouter } from "react-router-dom";
import { vi } from "vitest";
// Mock fetch
global.fetch = vi.fn(() =>
- Promise.resolve({
- ok: true,
- json: () => Promise.resolve({ results: [] }),
- }),
+ Promise.resolve({
+ ok: true,
+ json: () => Promise.resolve({ results: [] }),
+ headers: new Headers(),
+ redirected: false,
+ status: 200,
+ statusText: "OK",
+ type: "basic",
+ url: "",
+ clone: () => ({}),
+ body: null,
+ bodyUsed: false,
+ arrayBuffer: () => Promise.resolve(new ArrayBuffer(0)),
+ blob: () => Promise.resolve(new Blob()),
+ formData: () => Promise.resolve(new FormData()),
+ text: () => Promise.resolve(""),
+ } as Response),
);
describe("TopMenu Component", () => {
@@ -78,9 +90,23 @@ describe("TopMenu Component", () => {
test("handles API call failure gracefully", async () => {
(global.fetch as jest.Mock).mockImplementationOnce(() =>
- Promise.resolve({
- ok: false,
- }),
+ Promise.resolve({
+ ok: false,
+ headers: new Headers(),
+ redirected: false,
+ status: 500,
+ statusText: "Internal Server Error",
+ type: "basic",
+ url: "",
+ clone: () => ({}),
+ body: null,
+ bodyUsed: false,
+ arrayBuffer: () => Promise.resolve(new ArrayBuffer(0)),
+ blob: () => Promise.resolve(new Blob()),
+ formData: () => Promise.resolve(new FormData()),
+ text: () => Promise.resolve(""),
+ json: () => Promise.resolve({}),
+ } as Response),
);
render(
diff --git a/frontend/src/components/TopMenu.tsx b/frontend/src/components/TopMenu.tsx
index d5ca690..0236bec 100644
--- a/frontend/src/components/TopMenu.tsx
+++ b/frontend/src/components/TopMenu.tsx
@@ -1,11 +1,11 @@
-import React, { useState } from "react";
+import React, { useState, KeyboardEvent } from "react";
import { IoIosSearch, IoIosSettings } from "react-icons/io";
import { Link } from "react-router-dom";
function TopMenu() {
const [searchTerm, setSearchTerm] = useState("");
- const handleKeyDown = async (event) => {
+ const handleKeyDown = async (event: KeyboardEvent
) => {
if (event.key === "Enter") {
// Call the REST API
try {
diff --git a/frontend/src/pages/Home.tsx b/frontend/src/pages/Home.tsx
index e81c8ce..40e3c03 100644
--- a/frontend/src/pages/Home.tsx
+++ b/frontend/src/pages/Home.tsx
@@ -11,14 +11,10 @@ function Home() {
]);
const [currentCardIndex, setCurrentCardIndex] = useState(0);
+ const likeMenu = true;
- const handleSwiped = (dir: string) => {
+ const handleSwiped = () => {
setCurrentCardIndex((prev) => (prev + 1) % cards.length);
- // if (dir === "left") {
- // setCurrentCardIndex((prev) => (prev > 0 ? prev - 1 : cards.length - 1));
- // } else if (dir === "right") {
- // setCurrentCardIndex((prev) => (prev + 1) % cards.length);
- // }
};
return (
@@ -32,7 +28,7 @@ function Home() {
onSwiped={handleSwiped}
/>
)}
-
+