From 29e7b9f8e066ba5922573e6d871702e93f10c9b4 Mon Sep 17 00:00:00 2001 From: albert Date: Tue, 29 Jul 2025 00:57:05 +0200 Subject: [PATCH] adding first basic test ( ScrapginService) --- README.md | 2 +- src/__tests__/ScrapingService.test.ts | 32 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 src/__tests__/ScrapingService.test.ts diff --git a/README.md b/README.md index f9274e8..0bcf545 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ - Fourth part: [#6 PR : feat/scraper](https://github.com/aabril/dailytrends/pull/6) - Crea un “servicio de lectura de feeds” que extraiga por web scraping - - + - we are going to be implementing a Factory for the scraper, since we are going to input values and then will build our custom class ## Feed layer abstractions diff --git a/src/__tests__/ScrapingService.test.ts b/src/__tests__/ScrapingService.test.ts new file mode 100644 index 0000000..bb52734 --- /dev/null +++ b/src/__tests__/ScrapingService.test.ts @@ -0,0 +1,32 @@ +import { ScrapingService } from '../services/ScrapingService'; +import { IFeedRepository } from '../repositories/FeedRepository'; + +// Mock FeedRepository +const mockFeedRepository: jest.Mocked = { + create: jest.fn(), + findAll: jest.fn(), + findById: jest.fn(), + findByUrl: jest.fn(), + findBySource: jest.fn(), + findTodaysFrontPage: jest.fn(), + update: jest.fn(), + delete: jest.fn(), + deleteMany: jest.fn(), + count: jest.fn(), + exists: jest.fn() +}; + +describe('ScrapingService', () => { + let scrapingService: ScrapingService; + + beforeEach(() => { + jest.clearAllMocks(); + scrapingService = new ScrapingService(mockFeedRepository); + }); + + describe('Basic Functionality', () => { + test('should create ScrapingService instance', () => { + expect(scrapingService).toBeInstanceOf(ScrapingService); + }); + }); +}); \ No newline at end of file