favGamesListRoute.test.tsx 1.99 KiB
// import { getFavoriteGames, getGame, getGames } from "@/lib/igdb";
// // Mocken der Fetch-Funktion für die API-Aufrufe
// jest.mock('node-fetch');
// describe('Game Service', () => {
// test('fetches games from the server', async () => {
// // Mock-Daten der Spiele
// const mockGamesData = [
// {
// id: 1,
// name: 'Game 1',
// cover: {
// image_id: 'cover_image_id_1',
// url: 'cover_image_url_1'
// },
// // Weitere Eigenschaften der IGame-Schnittstelle
// },
// {
// id: 2,
// name: 'Game 2',
// cover: {
// image_id: 'cover_image_id_2',
// url: 'cover_image_url_2'
// },
// // Weitere Eigenschaften der IGame-Schnittstelle
// },
// ];
// // Mock-Funktion für die Fetch-Funktion
// const mockFetch = jest.fn().mockResolvedValueOnce({
// ok: true,
// json: async () => mockGamesData,
// });
// // Mocken der globalen fetch-Funktion
// // @ts-ignore
// global.fetch = mockFetch;
// // Setzen der Umgebungsvariable IGDB_BASE_URL
// process.env.IGDB_BASE_URL = 'https://api.igdb.com/v4';
// // Aufruf der Funktion, die Spiele vom Server abruft
// const games = await getGames();
// // Überprüfen, ob die Fetch-Funktion mit den erwarteten Parametern aufgerufen wurde
// expect(mockFetch).toHaveBeenCalledWith('https://api.igdb.com/v4/games', {
// method: 'GET',
// // Weitere erwartete Optionen für den Fetch-Aufruf
// });
// // Überprüfen, ob die zurückgegebenen Spiele den erwarteten Daten entsprechen
// expect(games).toEqual(mockGamesData);
// });
// // Weitere Tests für getGame() und getFavoriteGames() hier...
// });