test Scraping Service adding item to repo
This commit is contained in:
		@@ -55,5 +55,24 @@ describe('ScrapingService', () => {
 | 
			
		||||
      await expect(scrapingService.getFeedCount()).rejects.toThrow(errorMessage);
 | 
			
		||||
      expect(mockFeedRepository.count).toHaveBeenCalled();
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    test('should save feed item to repository', async () => {
 | 
			
		||||
      const feedData = {
 | 
			
		||||
        title: 'Test News',
 | 
			
		||||
        description: 'Test description',
 | 
			
		||||
        url: 'https://example.com/news',
 | 
			
		||||
        source: 'El País' as any,
 | 
			
		||||
        publishedAt: new Date(),
 | 
			
		||||
        isManual: false
 | 
			
		||||
      };
 | 
			
		||||
      
 | 
			
		||||
      const savedFeed = { _id: '1', ...feedData };
 | 
			
		||||
      mockFeedRepository.create.mockResolvedValue(savedFeed);
 | 
			
		||||
      
 | 
			
		||||
      const result = await scrapingService.saveFeedItem(feedData);
 | 
			
		||||
      
 | 
			
		||||
      expect(mockFeedRepository.create).toHaveBeenCalledWith(feedData);
 | 
			
		||||
      expect(result).toEqual(savedFeed);
 | 
			
		||||
    });
 | 
			
		||||
  });
 | 
			
		||||
});
 | 
			
		||||
@@ -1,4 +1,5 @@
 | 
			
		||||
import { IFeedRepository } from '../repositories/FeedRepository';
 | 
			
		||||
import { IFeed } from '../types/Feed';
 | 
			
		||||
 | 
			
		||||
export class ScrapingService {
 | 
			
		||||
  constructor(private feedRepository: IFeedRepository) {}
 | 
			
		||||
@@ -14,4 +15,8 @@ export class ScrapingService {
 | 
			
		||||
  async getFeedCount(): Promise<number> {
 | 
			
		||||
    return await this.feedRepository.count();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  async saveFeedItem(feedData: Omit<IFeed, '_id' | 'createdAt' | 'updatedAt'>): Promise<IFeed> {
 | 
			
		||||
    return await this.feedRepository.create(feedData);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user