TDD 작성
This commit is contained in:
@@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user