TDD 작성

This commit is contained in:
2025-08-12 03:28:08 +09:00
parent 6033d59590
commit 107abc963f
156 changed files with 70906 additions and 642 deletions
@@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import '../models/subscription_model.dart';
import '../utils/test_utils.dart';
/// 구독 알림 서비스
class SubscriptionNotificationService extends ChangeNotifier {
@@ -33,10 +34,16 @@ class SubscriptionNotificationService extends ChangeNotifier {
}
SubscriptionNotificationService() {
// 주기적으로 구독 상태 확인 (1시간마다)
_checkTimer = Timer.periodic(const Duration(hours: 1), (_) {
// 테스트 환경에서는 Timer를 생성하지 않음
if (!TestUtils.isInTest) {
// 주기적으로 구독 상태 확인 (1시간마다)
_checkTimer = Timer.periodic(const Duration(hours: 1), (_) {
_checkExpirationStatus();
});
} else {
// 테스트 환경에서는 즉시 한 번만 체크
_checkExpirationStatus();
});
}
}
/// 구독 정보 업데이트
@@ -84,7 +91,11 @@ class SubscriptionNotificationService extends ChangeNotifier {
@override
void dispose() {
_checkTimer?.cancel();
// Timer가 있으면 취소
if (_checkTimer != null) {
_checkTimer!.cancel();
_checkTimer = null;
}
super.dispose();
}
}