Refactor news API integration to use NewsApiWrapper and GnewsWrapper; add tests for Gnews API functionality

This commit is contained in:
2025-09-30 00:34:07 +02:00
parent fc4753a245
commit c17a948ae0
10 changed files with 175 additions and 15 deletions

View File

@@ -0,0 +1,34 @@
import pytest
from app.news import GnewsWrapper
@pytest.mark.news
@pytest.mark.api
class TestGnewsAPI:
def test_gnews_api_initialization(self):
gnews_api = GnewsWrapper()
assert gnews_api is not None
def test_gnews_api_get_latest_news(self):
gnews_api = GnewsWrapper()
articles = gnews_api.get_latest_news(query="crypto", total=2)
assert isinstance(articles, list)
assert len(articles) == 2
for article in articles:
assert hasattr(article, 'source')
assert hasattr(article, 'time')
assert hasattr(article, 'title')
assert hasattr(article, 'description')
def test_gnews_api_get_top_headlines(self):
news_api = GnewsWrapper()
articles = news_api.get_top_headlines(query="crypto", total=2)
assert isinstance(articles, list)
assert len(articles) == 2
for article in articles:
assert hasattr(article, 'source')
assert hasattr(article, 'time')
assert hasattr(article, 'title')
assert hasattr(article, 'description')