import 'package:dio/dio.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:reelbox/data/api_service.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'api_service_test.dart' as fixtures; void main() { TestWidgetsFlutterBinding.ensureInitialized(); test('fresh catalogue requests use HTTPS port 443', () async { SharedPreferences.setMockInitialValues({}); final adapter = fixtures.StubAdapter((_) => fixtures.jsonBody([])); final api = ApiService(dio: Dio()..httpClientAdapter = adapter); await api.genres(); expect(adapter.requests.single.uri.port, 443); expect(api.baseUrl, 'https://reelbox.dartty.top/api/'); }); test( 'legacy 8443 selections migrate without retaining endpoint URLs', () async { SharedPreferences.setMockInitialValues({ 'reelbox.api-selection.v1': 'https://reelbox.dartty.top:8443/api/', 'reelbox.trusted-api.v1': 'https://reelbox.dartty.top:8443/api/', }); final adapter = fixtures.StubAdapter((_) => fixtures.jsonBody([])); final api = ApiService(dio: Dio()..httpClientAdapter = adapter); await api.genres(); expect(adapter.requests.single.uri.port, 443); final prefs = await SharedPreferences.getInstance(); expect(prefs.getString('reelbox.api-selection.v1'), 'primary'); expect(prefs.containsKey('reelbox.trusted-api.v1'), isFalse); }, ); }