From f3913b889b4098b3e7a5b9ca11e84caae5a2c68b Mon Sep 17 00:00:00 2001 From: Bryce Meyer Date: Sun, 22 Jun 2025 23:00:41 +0200 Subject: [PATCH] fixed lint issues in api --- src/test-utils/mocks/api.ts | 102 +++--------------------------------- 1 file changed, 6 insertions(+), 96 deletions(-) diff --git a/src/test-utils/mocks/api.ts b/src/test-utils/mocks/api.ts index 4561c98f..a3e2d12d 100644 --- a/src/test-utils/mocks/api.ts +++ b/src/test-utils/mocks/api.ts @@ -1,19 +1,5 @@ -/* eslint-disable */ -// @ts-nocheck -import { mockUser } from './models/user'; -import { mockCategory } from './models/category'; -import { mockCollection } from './models/collection'; -import { mockCollectionItem } from './models/collection-items'; -import { mockOrganization } from './models/organization'; -import { mockBusiness } from './models/business'; -import { mockPostResponse } from './models/post-response'; -import { mockLocation } from './models/location'; -import { mockRole } from './models/role'; -import { mockOrganizationManager } from '../../../models/organization/organization-manager'; -import { mockPage } from '../../../models/page'; - export interface ApiConfig { - params?: Record; + params?: Record; signal?: AbortSignal; } @@ -28,81 +14,19 @@ export interface Page { data: T[]; } -// Export mock data for use in tests -export { mockPlatform, mockPlatformGroup }; - const api = { - get: jest.fn().mockImplementation((url: string, config?: ApiConfig): Promise> => { + get: jest.fn().mockImplementation((url: string, config?: ApiConfig): Promise>> => { // Parse URL parameters from both URL and config const urlParams = new URLSearchParams(url.split('?')[1] || ''); const configParams = config?.params || {}; // Merge URL params with config params Object.entries(configParams).forEach(([key, value]) => { - if (value !== undefined) { + if (value !== undefined && value !== null) { urlParams.set(key, value.toString()); } }); - const expand = urlParams.get('expand[platforms]') === '*'; - const page = parseInt(urlParams.get('page') || '1'); - const limit = parseInt(urlParams.get('limit') || '10'); - - // Handle paginated endpoints - if (url === '/platforms') { - const response: Page = { - current_page: page, - last_page: 1, - total: 1, - data: [mockPlatform] - }; - return Promise.resolve({ data: response }); - } - - if (url === '/platform-groups') { - const response: Page = { - current_page: page, - last_page: 1, - total: 1, - data: [mockPlatformGroup] - }; - return Promise.resolve({ data: response }); - } - - // Handle single platform group endpoint - const platformGroupMatch = url.match(/\/platform-groups\/(\d+)/); - if (platformGroupMatch) { - const groupId = parseInt(platformGroupMatch[1]); - if (groupId === mockPlatformGroup.id) { - const response = { - ...mockPlatformGroup, - platforms: expand ? [mockPlatform] : undefined - }; - return Promise.resolve({ data: response }); - } - return Promise.reject({ - response: { - data: { error: 'Platform group not found' }, - status: 404 - } - }); - } - - // Handle single platform endpoint - const platformMatch = url.match(/\/platforms\/(\d+)/); - if (platformMatch) { - const platformId = parseInt(platformMatch[1]); - if (platformId === mockPlatform.id) { - return Promise.resolve({ data: mockPlatform }); - } - return Promise.reject({ - response: { - data: { error: 'Platform not found' }, - status: 404 - } - }); - } - // Default response for unhandled endpoints return Promise.resolve({ data: { @@ -114,29 +38,15 @@ const api = { }); }), - post: jest.fn().mockImplementation((url: string, data: any): Promise> => { - if (url === '/platform-groups') { - return Promise.resolve({ data: { ...mockPlatformGroup, ...data } }); - } - if (url === '/platforms') { - return Promise.resolve({ data: { ...mockPlatform, ...data } }); - } + post: jest.fn().mockImplementation((): Promise> => { return Promise.resolve({ data: null }); }), - put: jest.fn().mockImplementation((url: string, data: any): Promise> => { - const platformGroupMatch = url.match(/\/platform-groups\/(\d+)/); - if (platformGroupMatch) { - return Promise.resolve({ data: { ...mockPlatformGroup, ...data } }); - } - const platformMatch = url.match(/\/platforms\/(\d+)/); - if (platformMatch) { - return Promise.resolve({ data: { ...mockPlatform, ...data } }); - } + put: jest.fn().mockImplementation((): Promise> => { return Promise.resolve({ data: null }); }), - delete: jest.fn().mockImplementation((url: string): Promise> => { + delete: jest.fn().mockImplementation((): Promise> => { return Promise.resolve({ data: { success: true } }); }) };