import 'package:flutter_test/flutter_test.dart'; import 'package:social_app/features/auth/data/models/signup_request.dart'; import 'package:social_app/features/auth/data/models/login_request.dart'; import 'package:social_app/features/auth/data/models/auth_response.dart'; void main() { group('OtpSendRequest', () { test('serializes e164 phone to JSON', () { final request = OtpSendRequest(phone: '+14155552671'); final json = request.toJson(); expect(json['phone'], '+14155552671'); }); test('normalizes 00 prefix to plus', () { final request = OtpSendRequest(phone: '0014155552671'); final json = request.toJson(); expect(json['phone'], '+14155552671'); }); }); group('LoginRequest', () { test('serializes e164 to JSON', () { final request = LoginRequest(phone: '+14155552671', token: '123456'); final json = request.toJson(); expect(json['phone'], '+14155552671'); expect(json['token'], '123456'); }); }); group('AuthResponse', () { test('parses from JSON', () { final json = { 'access_token': 'test_access', 'refresh_token': 'test_refresh', 'expires_in': 3600, 'token_type': 'bearer', 'user': {'id': '123', 'phone': '+8613812345678'}, }; final response = AuthResponse.fromJson(json); expect(response.accessToken, 'test_access'); expect(response.refreshToken, 'test_refresh'); expect(response.expiresIn, 3600); expect(response.user.id, '123'); expect(response.user.phone, '+8613812345678'); }); }); }