From ebf0d096d5b758d5ca0b87cefc23d49b54cad806 Mon Sep 17 00:00:00 2001
From: shiva <shiva_05@outlook.com>
Date: Fri, 13 Dec 2024 17:00:16 +0530
Subject: [PATCH 1/3] refactor:request screen to vitest

---
 .../{Requests.test.tsx => Requests.spec.tsx}      | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)
 rename src/screens/Requests/{Requests.test.tsx => Requests.spec.tsx} (96%)

diff --git a/src/screens/Requests/Requests.test.tsx b/src/screens/Requests/Requests.spec.tsx
similarity index 96%
rename from src/screens/Requests/Requests.test.tsx
rename to src/screens/Requests/Requests.spec.tsx
index 4606fdae08..0be900404e 100644
--- a/src/screens/Requests/Requests.test.tsx
+++ b/src/screens/Requests/Requests.spec.tsx
@@ -1,8 +1,6 @@
 import React, { act } from 'react';
 import { MockedProvider } from '@apollo/react-testing';
 import { render, screen } from '@testing-library/react';
-import 'jest-localstorage-mock';
-import 'jest-location-mock';
 import { I18nextProvider } from 'react-i18next';
 import { Provider } from 'react-redux';
 import { BrowserRouter } from 'react-router-dom';
@@ -22,6 +20,18 @@ import {
   MOCKS4,
 } from './RequestsMocks';
 import useLocalStorage from 'utils/useLocalstorage';
+import { vi } from 'vitest';
+
+vi.stubGlobal('localStorage', {
+  getItem: vi.fn(),
+  setItem: vi.fn(),
+  clear: vi.fn(),
+  removeItem: vi.fn(),
+});
+
+Object.defineProperty(window, 'location', {
+  value: { href: 'http://localhost/', assign: vi.fn(), reload: vi.fn() },
+});
 
 const { setItem, removeItem } = useLocalStorage();
 
@@ -53,7 +63,6 @@ afterEach(() => {
 
 describe('Testing Requests screen', () => {
   test('Component should be rendered properly', async () => {
-    const loadMoreRequests = jest.fn();
     render(
       <MockedProvider addTypename={false} link={link7}>
         <BrowserRouter>

From aceed4c0ce6181de8b1bb6f04dca92b0b575073f Mon Sep 17 00:00:00 2001
From: shiva <shiva_05@outlook.com>
Date: Fri, 13 Dec 2024 19:17:18 +0530
Subject: [PATCH 2/3] refactor:vitest to Requests Screen

---
 src/screens/Requests/Requests.spec.tsx | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/screens/Requests/Requests.spec.tsx b/src/screens/Requests/Requests.spec.tsx
index 0be900404e..84fd32e5f4 100644
--- a/src/screens/Requests/Requests.spec.tsx
+++ b/src/screens/Requests/Requests.spec.tsx
@@ -22,6 +22,10 @@ import {
 import useLocalStorage from 'utils/useLocalstorage';
 import { vi } from 'vitest';
 
+/**
+ * Set up `localStorage` stubs for testing.
+ */
+
 vi.stubGlobal('localStorage', {
   getItem: vi.fn(),
   setItem: vi.fn(),
@@ -29,6 +33,10 @@ vi.stubGlobal('localStorage', {
   removeItem: vi.fn(),
 });
 
+/**
+ * Mock `window.location` for testing redirection behavior.
+ */
+
 Object.defineProperty(window, 'location', {
   value: { href: 'http://localhost/', assign: vi.fn(), reload: vi.fn() },
 });
@@ -43,6 +51,14 @@ const link5 = new StaticMockLink(MOCKS_WITH_ERROR, true);
 const link6 = new StaticMockLink(MOCKS3, true);
 const link7 = new StaticMockLink(MOCKS4, true);
 
+/**
+ * Utility function to wait for a specified amount of time.
+ * Wraps `setTimeout` in an `act` block for testing purposes.
+ *
+ * @param ms - The duration to wait in milliseconds. Default is 100ms.
+ * @returns A promise that resolves after the specified time.
+ */
+
 async function wait(ms = 100): Promise<void> {
   await act(() => {
     return new Promise((resolve) => {

From bb4bad85e73e96aa1a175f8994a1afcd83385d3f Mon Sep 17 00:00:00 2001
From: shiva <shiva_05@outlook.com>
Date: Fri, 13 Dec 2024 19:42:32 +0530
Subject: [PATCH 3/3] implement codreabbit suggestions

---
 src/screens/Requests/Requests.spec.tsx | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/screens/Requests/Requests.spec.tsx b/src/screens/Requests/Requests.spec.tsx
index 84fd32e5f4..820b24c40d 100644
--- a/src/screens/Requests/Requests.spec.tsx
+++ b/src/screens/Requests/Requests.spec.tsx
@@ -38,7 +38,15 @@ vi.stubGlobal('localStorage', {
  */
 
 Object.defineProperty(window, 'location', {
-  value: { href: 'http://localhost/', assign: vi.fn(), reload: vi.fn() },
+  value: {
+    href: 'http://localhost/',
+    assign: vi.fn(),
+    reload: vi.fn(),
+    pathname: '/',
+    search: '',
+    hash: '',
+    origin: 'http://localhost',
+  },
 });
 
 const { setItem, removeItem } = useLocalStorage();