"""Tests for TokenService using Flask-JWT-Extended.""" from unittest.mock import patch from app import create_app from app.services.token_service import TokenService class TestTokenServiceJWTExtended: """Test cases for TokenService with Flask-JWT-Extended.""" def test_generate_access_token(self) -> None: """Test access token generation.""" app = create_app() with app.app_context(): token_service = TokenService() user_data = { "id": "123", "email": "test@example.com", "name": "Test User", "picture": "https://example.com/pic.jpg" } token = token_service.generate_access_token(user_data) assert isinstance(token, str) assert len(token) > 0 def test_generate_refresh_token(self) -> None: """Test refresh token generation.""" app = create_app() with app.app_context(): token_service = TokenService() user_data = { "id": "123", "email": "test@example.com", "name": "Test User" } token = token_service.generate_refresh_token(user_data) assert isinstance(token, str) assert len(token) > 0 def test_generate_tokens_different(self) -> None: """Test that access and refresh tokens are different.""" app = create_app() with app.app_context(): token_service = TokenService() user_data = { "id": "123", "email": "test@example.com", "name": "Test User" } access_token = token_service.generate_access_token(user_data) refresh_token = token_service.generate_refresh_token(user_data) assert access_token != refresh_token