import 'package:dio/dio.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:jinzhi_flutter_app/features/auth/data/auth_api.dart'; import 'package:jinzhi_flutter_app/models/pb/jinzhi/v1/account.pb.dart' as pb; void main() { test('keeps the verified one-key login contract', () async { String? requestToken; final dio = Dio() ..interceptors.add( InterceptorsWrapper( onRequest: (options, handler) { requestToken = pb.VerifyOneKeyLoginRequest.fromBuffer( options.data as List, ).loginToken; handler.resolve( Response>( requestOptions: options, statusCode: 200, data: pb.VerifySmsCodeReply( accessToken: 'access-token', user: pb.UserInfo( id: 'user-1', phone: '13800138000', createdAt: '2026-09-08T00:00:00Z', ), ).writeToBuffer(), ), ); }, ), ); final result = await AuthApi(dio).verifyOneKeyLogin('umeng-token'); expect(requestToken, 'umeng-token'); expect(result.accessToken, 'access-token'); expect(result.user.phone, '13800138000'); }); }